【分页查询】Page如何做到分页查询

分页查询是一个非常重要的知识点;
这里的代码不能直接拷贝运行,这里讲的只是个思路;

public PageModel<UserList > selectCheckList (UserList  userList) throws Exception{   PageHelper.startPage(searchVo.getPageIndex(),searchVo.getPageSize(),searchVo.getOrderBy());
        PageModel<UserList> pageModel = new PageModel<>();
        Page pageList = new Page();
        pageList.addAll(UserLists);
        pageModel.setPageIndex(searchVo.getPageIndex());
        pageModel.setPageSize(searchVo.getPageSize());
        pageModel.setTotal(Long.valueOf(""+requestContext.globalData("rowsCount")));
        pageModel.setData(pageList.getResult());
        pageModel.setPageCount(pageList.getPages());
        return pageModel ;
    }

1.gitHub上有开源的Page和PageHelper:


import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;

2.我们需要一个PageModel泛型,这里的的PageModel<UserList>里面,要放我们要分页的对象,是一个集合,就是每一行(这里的每一行,我们作一个对象处理);
3.这里的pageModel ,需要设置页码(pageIndex),每页的数据总计条数(pageSize)和所以数据条数(Total);比如,我有50个人的个人信息,这里一个人的个人信息就是一个对象;Total就等于50;每页我只显示20条,那么PageSize就等于20;pageIndex从1变化为3;
4.Page pageList = new Page();这里的Page是作为一个容器,用来装载我的所有数据对象,比如说,我50个人的信息,组成一个List<个人信息>,我要把List<个人信息>都放到pageList里面,最后,在套在PageMode中;这样模型和数据都是分开的,比较清晰,就像沙子和模具(一个盒子,即pageModel );沙子是沙子,模具是模具,不会拖泥带水;
5.pageModel .setData(pageList.getResult());这个方法就是沙子(pageList)和模具(pageModel )之间关系的一个方法,把沙子放到模具中,setData()这个方法,就是放沙子到模具的过程;
6.pageList.addAll(UserLists);是把散的沙子都捧在手里,就先你在海边,海边有许多沙子,你要用手把沙子(50人的信息),先放在手里;这个方法就是把我们的分页的对象(50人的个人信息)先放在pageList中,然后pageList再把这些打包好的信息,放到模具(PageModel)中;

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陶洲川

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值