知识积累:PageHelper分页问题,页码小于总页数和大于总页数返回数据问题,PageHelper分页失效
问题:
项目中有些功能使用到了PageHelper进行分页处理,使用的方式为下方代码:
PageHelper.startPage(request.getPageNum(), request.getPageSize(), true);
这种使用方式会出现,
当请求的页码数=0时,会返回所有数据;
当请求的页码数小于0时,返回第一页数据,页码数大于总页数时,会返回最后一页的数据。
通过debug跟踪发现是由于reasonable参数默认为true的时候,会进行pageNum的重置为pages大小,从而导致当请求的页码数大于总页数时,会返回最后一页的数据问题。
解决方案:
修改使用方式
PageHelper.startPage(request.getPageNum(), request.getPageSize(), true,false,null);
上面的方式可以解决当请求的页码数小于0时,返回第一页数据,页码数大于总页数时,会返回最后一页的数据的问题。
还需要分析当请求的页码数小于总页数时,会返回所有数据;
这个是由另一个参数pageSizeZero控制;
pageSizeZero说明:当设置为true的时候(默认为true),如果pagesize设置为0(或RowBounds的limit=0),就不执行分页,返回全部结果
这里设置为false,解决当请求的页码数=0时,会返回所有数据问题。
修改使用方式
PageHelper.startPage(request.getPageNum(), request.getPageSize(), true,false,false);
参考: 添加链接描述
-------------如果对你有用,请给个赞,谢谢~~
-------------欢迎各位留言交流,如有不正确的地方,请予以指正。【VX:编程之声】
m0_72963391: 点击运行后,出现一个框,宏,只有一个取消可以点,其他按钮都是灰色的
_夜半钟声到客船: w关注x后留言
Crazycrm: 有一个语句没弄明白,第19行,运行显示合并单元格无法进行此操作
_夜半钟声到客船: 再不行,你关注一下v新,编程心声。留言给我
_夜半钟声到客船: wps专业版。有那个开发工具吧?可以问一下wps客服。