2012-07-04 220 views
0

我使用jpa(使用Hibernate的實現)。Jpa(休眠)返回類型

什麼是決定一個查詢的返回類型的最佳方式? 我希望數字默認返回爲java.lang.Long(或oracle.jbo.number) - 而不是java.math.BigDecimal。

非常感謝。

+0

不知道我完全理解你的問題。查詢的返回類型肯定將由查詢執行的底層HQL決定。 – JamesB

+0

+1,結果類型將取決於您指定的查詢。你在選擇什麼?如果它的功能,那些可以根據哪個功能知道。如果屬性,結果類型與屬性類型相同。但你真的需要向我們展示查詢。如果您想以編程方式查看結果類型,org.hibernate.Query.getReturnTypes()會向您顯示(結果是Hibernate類型實例) –

回答

0

如果你想要一個長期的,爲什麼不直接把結果電話號碼,並使用.longValue()???? 我在這裏假設你找回一個對象(或一個對象數組)。如果您不確定元組或投影會返回哪種類型,請利用類層次結構,因爲Long,Integer,Short,Double,Float,BigInteger和BigDecimal都會擴展Number類。

0

你要把你的結果與不同類型的,你喜歡的,看到這個

 long result= (Long)query.getSingleResult(); 
     or 
     BigDecimal result = (BigDecimal)query.getSingleResult(); 
     or 
     Object result = (Object)query.getSingleResult();