Hql没有limit,替换方案

在HQL+MYSQL中不能直接在查询语句中使用LIMIT进行检索,正确方法为:

String hql = "from User where id=? order by addDate desc";
Query query = session.createQuery(hql);
query.setParameter(0, userId);
query.setFirstResult(pageroffset);
query.setMaxResults(e);
pageroffset:开始检索的位置,int
e:返回最大记录行,int
执行此HQL后在生成的查询语句中会自动加上limit ?。

例:查询前5条数据:

query.setFirstResult(0);
query.setMaxResults(4);

posted @ 2016-08-29 13:38  Json_wangqiang  阅读(418)  评论(0编辑  收藏  举报