分页利用PageHelper startPage page rows 时所放位置的注意事项

首先给大家推荐一下我老师大神的人工智能教学网站。教学不仅零基础,通俗易懂,而且非常风趣幽默,还时不时有内涵黄段子!点这里可以跳转到网站

我在利用PageHelper.startPage(page, rows)做分页时,得到的total始终为0,满足不了工作要求.网上没搜到解决方案,自己调试了好久,才发现,顺序写错了。下面分享一下我工作中在用PageHelper时,遇到的问题,以及解决方案:

原来代码如下:

public TaoResult queryContentByPage(Integer page, Integer rows, Long categoryId) {

  //根据前台传过来的商品父 id: categoryId查询商品情况,查询出来的是多条商品数据list 
Content content = new Content();
content.setCategoryId(categoryId);
List<Content> list = super.queryListByWhere(content);

//设置分页数据
PageHelper.startPage(page, rows);

//获取pageInfo
PageInfo<Content> pageInfo = new PageInfo<>(list);
//获得总条数
long total = pageInfo.getTotal();
TaoResult<Content> taoResult = new TaoResult<Content>();
taoResult.setTotal(total);
taoResult.setRows(list);
return taoResult;
}

这样写,分页数据total始终为0,在debug调试过程中,可以看到最终结果为0,前台页面效果如下(右下角红框内):

把PageHelper.startPage(page, rows)提到最前面,修改后代码:

public TaoResult queryContentByPage(Integer page, Integer rows, Long categoryId) {

  //设置分页数据
PageHelper.startPage(page, rows);

  //根据前台传过来的商品父 id: categoryId查询商品情况,查询出来的是多条商品数据list 
Content content = new Content();
content.setCategoryId(categoryId);
List<Content> list = super.queryListByWhere(content);


//获取pageInfo
PageInfo<Content> pageInfo = new PageInfo<>(list);
//获得总条数
long total = pageInfo.getTotal();
TaoResult<Content> taoResult = new TaoResult<Content>();
taoResult.setTotal(total);
taoResult.setRows(list);
return taoResult;
}

修改后前台数据效果(右下角红框内):

总结:在使用PageHelper分页时,一定要把PageHelper.startPage(page, rows)放在最前面,否则会造成总条数显示为:0

(尊重笔者的劳动哦,转载请注明出处哦。)

点这里可以跳转到人工智能网站

0 0 投票数
文章评分
订阅评论
提醒
0 评论
内联反馈
查看所有评论
0
希望看到您的想法,请发表评论。x
()
x