正常使用PageHelper来分页时可以的,但是如果在查询list后做了非常多的处理,即解包在装包操作。可能最后返回时分页的数据查询的对,但是分页信息就有问题了。有的甚至分页功能都不行。这里为避免几个坑,有些规则遵守还是有必要的。

1.首先将下面这句代码放在第一行。

PageHelper.startPage(pageNum, pageSize);

2.查询出list后,通过下面语句获取总条数。这个不是这一页的总条数,而是不分页情况下查询的总条数。

PageInfo<实体类> pageInfo = new PageInfo(实体类对应的集合);
int total = (int)pageInfo.getTotal();

3.在代码的最后做如下处理

 CommonPage<StandardLessonInfo> orderCommonPage = CommonPage.restPage(lessonInfoList);orderCommonPage.setList(lessonInfoList);orderCommonPage.setPageNum(pageNum);orderCommonPage.setPageSize(pageSize);orderCommonPage.setTotalPage((total + pageSize - 1) / pageSize);orderCommonPage.setTotal(pageInfo.getTotal());return CommonResult.success(orderCommonPage);

下面是具体的demo。

public CommonResult<CommonPage<StandardLessonInfo>> queryUserLessonDetail(Integer pageNum, Integer pageSize, Long parentUserId, Integer type, Date starTime) {PageHelper.startPage(pageNum, pageSize);//首先查询该家长一种类型的所有账户变动记录信息List<FinanceBalanceChange> financeBalanceChanges = lessonMapper.selectFinanceBalanceChangeByAccountType(parentUserId, type, starTime);if (financeBalanceChanges == null || financeBalanceChanges.size() < 1) {return CommonResult.success(CommonPage.restPage(new ArrayList<>(0)));}PageInfo<FinanceBalanceChange> pageInfo = new PageInfo(financeBalanceChanges);int total = (int)pageInfo.getTotal();List<StandardLessonInfo> lessonInfoList = new ArrayList<>(financeBalanceChanges.size());//根据不同的reason,会获取不同的信息。financeBalanceChanges.forEach(financeBalanceChange -> {做了很多的业务处理。。。。。。lessonInfoList.add(standardLessonInfo);});CommonPage<StandardLessonInfo> orderCommonPage = CommonPage.restPage(lessonInfoList);orderCommonPage.setList(lessonInfoList);orderCommonPage.setPageNum(pageNum);orderCommonPage.setPageSize(pageSize);orderCommonPage.setTotalPage((total + pageSize - 1) / pageSize);orderCommonPage.setTotal(pageInfo.getTotal());return CommonResult.success(orderCommonPage);}

springboot+mybatis 利用PageHelper插件分页,结果第二页的返回分页信息还是和第一页一样。相关推荐

  1. SpringBoot + Mybatis + Druid + PageHelper 实现多数据源并分页

    点击关注公众号,Java干货及时送达 本篇文章主要讲述的是SpringBoot整合Mybatis.Druid和PageHelper 并实现多数据源和分页.其中SpringBoot整合Mybatis这块 ...

  2. SpringBoot+Mybatis+ Druid+PageHelper 实现多数据源并分页

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试资料 作者: 虚无境 cnblogs.com/xuwujing/p/89 ...

  3. SpringBoot + Mybatis + Druid + PageHelper 实现多数据源分页

    点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 作者 | 虚无境的博客 来源 | http://8rr. ...

  4. SSM中使用Mybatis的PageHelper插件实现分页

    效果 实现 前言 前面实现SSM整合以及实现原始手动分页参考 https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/85113289 添加 ...

  5. Springboot Mybatis使用PageHelper实现分页查询

    以下介绍实战中数据库框架使用的是mybatis,对整合mybatis此处不做介绍. 使用pageHelper实现分页查询其实非常简单,共两步: 一.导入依赖: pom.xml添加依赖: <!-- ...

  6. Springboot Mybatis使用pageHelper实现分页查询

    以下介绍实战中数据库框架使用的是mybatis,对整合mybatis此处不做介绍. 使用pageHelper实现分页查询其实非常简单,共两步: 一.导入依赖: 二.添加配置: 那么开始, 第一步: p ...

  7. Spring + Mybatis 使用 PageHelper 插件分页

    转载:http://blog.csdn.net/joker_zhou/article/details/50418005 先增加maven依赖: [html] view plaincopy print? ...

  8. layui结合mybatis的pagehelper插件的分页通用的方法

    总体思路: 1.前台查询的时候将当前页和页大小传到后台 2.后台将当前页,页大小以及数据与数据总数返回前台,前台显示完表格完数据之后显示分页插件. 前台页面: 准备查询条件的表单,与数据表格,分页di ...

  9. SpingBoot中使用MyBatis和pagehelper实现数据的增删改查和分页

    文章目录 一.认识MyBatis CRUD注解 映射注解 高级注解 二.用MyBatis实现数据的增加.删除.修改.查询和分页 1.创建springboot项目并引入依赖 2.实现数据表的自动初始化 ...

最新文章

  1. 配置 php-fpm 监听的socket
  2. javabean和EJB的区别
  3. Android studio Day01-23
  4. clistctrl 单机空白处 会取消选中_官方默许BUG:无法选中也能被控制?这些秘密很多玩家到现在都没发现!...
  5. Kubernetes pod状态出现ImagePullBackOff的原因
  6. Android之解决开启热点后跳转页面不稳定问题
  7. [SDOI2011]消耗战
  8. 2020年2月全国程序员工资统计
  9. Oracle使用数据泵导入/导出数据(expdp/impdp)【图文教程】
  10. 想要羊毛薅得少,欺诈防控少不了
  11. 从零打造一个程序员的mac
  12. 【LeetCode】【字符串】题号:*657. 机器人能否返回原点
  13. jdk1.8 64位 32位免费下载
  14. 小米路由器R1C或R1CM小米R1C 原厂Bootloader和epproom
  15. LaTeX中文伪代码
  16. Runnable小练习(网图下载)
  17. 基于数据驱动的故障检测(一)
  18. mysql 1236 bug_MySQL 1236错误解决方法
  19. LPC1768用官方库中用寄存器开启两个硬件PWM
  20. arm-3-中断体系结构

热门文章

  1. html图片左侧留白,HTML+CSS入门 如何解决图片跨域导致的截图空白
  2. 深入了解iPad上的MouseEvent
  3. echarts中折线图、柱状图之间的转换
  4. u盘读不出来怎么修复?可以试试这个方法
  5. 从反脆弱角度谈技术系统的高可用性
  6. 开源工业缺陷数据集汇总,持续更新中(已更新28个)
  7. 读薄《高性能MySql》(三)索引优化
  8. 读《春秋》有感之十六:楚共王选谥号
  9. 某个个人公众号阅读量和点赞数分析
  10. Python学习笔记--day10函数入门