2016-07-13 105 views
0

我怎樣才能使用這個SQL查詢來休眠標準select * from DailyExpense where month(tdate)=07 and year(tdate)=2016每日開支是我的pojo類和tdate是列名。我只想選擇當前的月份數據,只選擇如何根據月份進行選擇。如何使用這個SQL查詢來休眠條件功能

+0

爲什麼不使用'createNativeQuery'而不是'criteria' –

+0

如果我使用createNativeQuery男子如何月份參數將該列表分配給我的pojo。它顯示解析錯誤 – Manihtraa

回答

0

使用HQL。

from DailyExpense where year(birthDate)=:year and month(birthDate)=:month" 

之後,綁定:一年:使用查詢的了setString(whetever您的月和年的值)

+0

SQLQuery qry = sessionFactory.getCurrentSession()。createSQLQuery(「from DailyExpense where month(tdate)= 07 and year(tdate)= 2016」); List dailyEx = qry.list(); \t \t爲(DailyExpense DLE:dailyEx){ \t \t \t的System.out.println( 「噠噠噠---」 + dle.getExpenseId()+ 「---」 + dle.getAmount()+」日期:「+ dle.getTdate()+」name:「+ dle.getRoomMember()。getMemberName()); \t \t}鞋子出現以下錯誤HTTP狀態500 - 請求處理失敗;嵌套異常是org.hibernate.exception.SQLGrammarException:無法執行查詢 – Manihtraa

+0

SQLQuery qry = sessionFactory.getCurrentSession()。createSQLQuery(「select * from DailyExpense where month(tdate)= 07 and year(tdate)= 2016」);我使用這個男士我顯示錯誤「請求處理失敗;嵌套異常是java.lang.ClassCastException:[Ljava.lang.Object;不能轉換爲com.room.model.DailyExpense」 – Manihtraa