关于hibernate分页的问题?

publicstaticList<Sysuser>getAll(intpageNo,intpageSize){List<Sysuser>list=newArrayList... public static List<Sysuser> getAll(int pageNo,int pageSize){
List<Sysuser> list=new ArrayList<Sysuser>();
Session session=null;
try{
session=SessionFactory.getSession();
Query query=session.createQuery("from Sysuser");
query.setMaxResults((pageNo-1)*pageSize);
query.setFirstResult(pageNo);
list=query.list();
}catch(Exception e){
e.printStackTrace();
}finally{
SessionFactory.closeSession();
}
return list;
}
这是分页其中一个方法,请帮我解释一下这两句
query.setMaxResults((pageNo-1)*pageSize);
query.setFirstResult(pageNo);
展开
 我来答
jxbeijing
2010-12-07 · TA获得超过161个赞
知道答主
回答量:23
采纳率:0%
帮助的人:31.3万
展开全部
分页有2个参数一个是开始索引,一个是结束索引
query.setMaxResults((pageNo-1)*pageSize);
这个方法是设置你的结束索引的,传进去的参数是(当前页的第一个元素下标-1)*一页中显式的数据个数;
query.setFirstResult(pageNo);
这个方法是设置你的开始索引,传进去的参数是当前页的第一个元素下标。

pageNo这个变量是随着你的页面而变化的。

不知道这么解释您是否理解,有什么需要可随时联系,希望能够帮助您
Big嘴
2010-12-07 · TA获得超过4097个赞
知道小有建树答主
回答量:697
采纳率:50%
帮助的人:638万
展开全部
query.setMaxResults(max); 每页显示的记录条数
query.setFirstResult(pageNo); 从第几页开始
如果每页显示的记录数是固定的,只要前台传来一个pageNum就可以了。否则两个,而且也不需要进行query.setMaxResults((pageNo-1)*pageSize);
这个操作吧。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cqljpv
2010-12-08 · TA获得超过1404个赞
知道小有建树答主
回答量:546
采纳率:0%
帮助的人:413万
展开全部
你的意思是第二段代码中的Bloginofs对象没有获取到吗?如果是这样的话,检查一下实体映射文件中的关联是否设置正确。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式