我需要通過在Hibernate中執行本機查詢來獲得結果集。雖然我使用的是EntityManager,但查詢和結果集可能不是實體。Hibernate JPA本機查詢結果集
需要獲取List的ResultSet。由於選擇輸出可能會有所不同(動態讀取),我不能使用SqlResultSetMapping。
當我試着下面的代碼,我得到了一個結果。因爲我要求的是單一的價值結果。 (休眠JPA)
Query query = manager.createNativeQuery("select name from fresher_test where id=1");
List<Object> amount = query.getResultList();
if(amount == null)
{
System.out.println("Hey its a null");
return;
}
for(Object e : arr)
{
System.out.println(e.toString());
}
輸出爲:艾麗絲
當我試圖得到一個以上的從與查詢相同的代碼選擇名稱選擇的,指定從fresher_test其中id = 1
輸出結果爲:[Ljava.lang.Object; @ 8b1a4f
一個對象。我如何從這個對象獲取字段?我試圖將對象e(List l =(List)e;)轉換爲List,但是我拋出java.lang.ClassCastException:java.lang.String不能轉換爲java.util.List。
這有一種方法,我可以得到一個列表或數組中的值?
注意:由於結果可能是動態的,因此無法使用結果類/實體。
列表