分页问题

分页问题

//开启分页1 、
PageHelper.startPage(pageNum, pageSize);
//通过用户的id,查询到对应的订单数据
List<Order> orders = orderMapper.selectForCustomer(UserFilter.currentUser.getId());
PageInfo pageInfo = new PageInfo<>(orders);

2、Page<?> page = PageHelper.startPage(pageNum, pageSize);
​List<WithdrawDeposit> list = withdrawDepositService.selectByParam(searchMap);

这两种写法,都可以实现分页, pageInfo 是干嘛的? 有什么区别吗,这两种写法。 

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕小尤 2021-08-27 10:28:48

同学你好,1、PageInfo中存储的是分页的信息,PageInfo会根据传入的list设置pageNum,pageSize等值,所以PageInfo应该传入通过mapper直接查询出来的数据,也就是orders。

2、区别:

    1)pageHelper分页的底层主要是通过 aop来实现,在执行sql之前会在sql语句中添加limit offset这两个参数。这样就完成了动态的分页。

    2)PageInfo可以对PageHelper查询的结果进行封装以获得详细的分页查询结果。

祝学习愉快!

  • 提问者 rock221 #1

    那不使用pageInfo  也可以获取到分页的结果?

    2021-08-27 11:23:07
  • 好帮手慕小尤 回复 提问者 rock221 #2

    同学你好,是的,不使用PageInfo是可以获取到分页的结果。

    祝学习愉快!

    2021-08-27 13:10:58
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师