Hibernate 限制查詢數目,解決Limit在hql不能使用問題


在hql語句中,不能使用limit來限制顯示的條數。

例如:

FROM user_info order by createdTime desc limit 1

顯示的數目不是1條,而是你查詢出來的條數,所以上述寫法是錯誤的。

如何解決limit在hql中不能使用,並設置查詢出來集合的數目,我們應該使用setMaxResults(e)方法來解決。

以下是使用Hibernate查詢並限制查詢數目的案例:

public List<User> findUserList(){
String hql = "FROM user order by createdTime desc";
Query query = session.createQuery(hql);
query.setMaxResults(3);
List<User> list = query.list();
session.close();
return list;
}
我們還可以通過添加setFirstResult()方法來設置開始查詢的位置。

query.setFirstResult(e);//e是int值,是開始查詢的位置
這樣就解決了在hql語句中limit不能使用的問題。




注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com