我是新來的所有這個Hibernate/JPA的東西,所以我會盡量做到儘可能清晰。休眠 - createNativeQuery與「非實體類」結果
Hibernate中有沒有什麼方法可以使用createNativeQuery在查詢中選擇一個或多個字段,而無需使用實體類作爲返回對象?
我試圖做到這一點,而不使用任何XML相關的東西。
Query query = getEntityManager().createNativeQuery("select name from contact where id_contact = :idContact", String.class);
query.setParameter("idContact", 9293L);
Object string = query.getSingleResult();
System.out.println(string);
使用這個我有例外:Exception in thread "main" javax.persistence.PersistenceException: org.hibernate.MappingException: Unknown entity: java.lang.String
感謝
編輯:
我也試過:
Query query = getEntityManager().createNativeQuery("select name from contact where id_contact = :idContact");
query.setParameter("idContact", 9293L);
List list = query.getResultList();
if (!list.isEmpty()){
Object string = list.get(0);
System.out.println(string);
}
以同樣的異常:Exception in thread "main" java.lang.ClassCastException: java.lang.String cannot be cast to [Ljava.lang.Object;
編輯(2): 我開始認爲這是無論是在休眠錯誤或這是不可能做這樣的事情......
相同拋出異常:異常在線程 「主要」 java.lang.ClassCastException:java.lang中。字符串不能轉換爲[Ljava.lang.Object; – Joshua