使用pagehelper的坑(返回的total和size每页条数一致的问题)

这篇具有很好参考价值的文章主要介绍了使用pagehelper的坑(返回的total和size每页条数一致的问题)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

问题描述

众所周知,pagehelper使用时应该在dao查询语句的前一句加上PageHelper.startPage,因为startpage是SQL拦截器,拦截它之后的第一个SQL,所以标题的问题由此引出……

原因

PageHelper.startPage使用后会将list隐性的给转换为page类型,如图所示

使用pagehelper的坑(返回的total和size每页条数一致的问题)

万一没转换成Page类型呢?比如在controller层使用该方法去处理Service层的list数据,或者不按照规范未在Mapper语句上一行使用该方法时...

这样就导致了后面在使用pageInfo时的一些问题,比如getTotal时,发现startPage方法转换过的list并不是Page类型,而是普通的list类型,所以在getTotal时相当于直接调用的list.Size()去获取总数,源码如下:
使用pagehelper的坑(返回的total和size每页条数一致的问题)

解决方案

1.第一种解决方案:使用PageHelper.startPage时返回的page类传入PageInfo里,比如

Page page = PageHelper.startPage(页码,页数);
List<T> list = mapper/service/***.get(T);//要分页的list
PageInfo<T> pageInfo = new PageInfo<>(page)//传入page而非list
return pageInfo.getTotal();//返回总条数

2.第二种解决方案:不要在非Mapper返回的list上做处理,startPage只有在mapper语句的上一行添加才能隐形的把list转换为page类型,其他比如service层返回的list均不能转换为page。文章来源地址https://www.toymoban.com/news/detail-617835.html

到了这里,关于使用pagehelper的坑(返回的total和size每页条数一致的问题)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 前端调接口下载(导出)后端返回.zip压缩文件流(的坑!)

    前言:基于vue2+element-ui的一个后台管理系统,需求评审要加一个导入导出文件的功能,由于可能导出的数据量过大(几十万条数据),下载时间过长,所以用.zip压缩文件替代excel文件 本人以前也做过导出文件的功能,但是用的方法是后端处理数据然后放到另一个服务器上,前

    2024年02月03日
    浏览(51)
  • 使用FreeMarker生成word文件自定义每页页眉或页脚

    最新工作中遇到生成word中表格时,要求文档中每页头部和底部都是固定格式的表格,但是内容不一样,头部信息在word中画样式的时候就可以设置为“在各页顶端以标题形式重复出现”,而底部就没有办法这样设置了,之后就想着在眉脚中设置相应的样式就可以啦,但是发现

    2024年02月16日
    浏览(92)
  • Element-ui Pagination 分页使用:切换页数以及选择每页个数table没有反应

    最近在练手vue2.0 +  element-ui项目,在组合使用element分页器和table的时候遇到一点问题,由于练手项目所以后端仅提供table数据,并未进行分页处理,所以对table数据的分页使用了前端处理方式,即获取所有table数据后在前端处理数据实现分页。 分页器视图部分,这里注意 !!

    2024年02月15日
    浏览(36)
  • SpringBoot中mybatis分页插件的使用--【pagehelper组件】

    SpringBoot知识范围-学习步骤【JSB系列之000】 用免费公开视频,卷飞培训班哈人!打死不报班,赚钱靠狠干! 只要自己有电脑,前后项目都能搞!N年苦学无人问,一朝成名天下知! 本文专指mybatis分页,可以是SSM的项目,也可以是springBoot 的项目里的mybatis,或者mybatis plus 韩顺平

    2024年02月14日
    浏览(65)
  • 将word每页页眉单独设置

    在进行论文排版的时候,总是会出现页眉的页码设置问题,比如出现奇数或偶数页码一致,尝试将前面页码改掉,后面再修改前面也进行了变动,将每页页眉单独设置: (1)在第一页的最后一行输入页面布局的分隔符:选择下一页分节符 此时光标跳到下一页中,再点开第二

    2024年02月14日
    浏览(50)
  • 【Java 进阶篇】深入理解 Bootstrap 导航条与分页条

    Bootstrap 是一个强大的前端框架,为网页和应用程序开发提供了丰富的组件和工具。其中,导航条和分页条是两个常用的组件,用于创建网站的导航和分页功能。本篇博客将深入探讨 Bootstrap 导航条和分页条的使用,适用于那些希望提升网页设计技能的初学者。 在深入了解 B

    2024年02月07日
    浏览(42)
  • tk-mybatis使用介绍,springboot整合tk-mybatis、PageHelper实现分页查询

    Mybatis-Plus极大简化了我们的开发,作为mybatis的增强版,Mybatis-Plus确实帮我们减少了很多SQL语句的编写,通过其提供的API,可以方便地完成增删查改操作。但是,其实除了Mybatis-Plus以外,还有一个技术tk-mybatis可以达到同样的效果,只不过随着MP的兴起,tk-mybatis已经被渐渐淡忘

    2024年02月12日
    浏览(40)
  • mybatis-plus分页total为0,分页失效,mybatis-plus多租户插件使用

    背景:项目使用mybatis分页插件不生效,以及多租户使用时读取配置异常 多租户插件使用遇到的问题: 最开始在MyTenantLineHandler中使用 @Value(\\\"${tables}\\\"),服务启动时能从配置中心拉取到配置,但在运行时获取到的值为空,试了很多方法都不生效,后面将配置中心的配置在调用My

    2024年02月06日
    浏览(52)
  • 单个数据源与多数据源使用mybatisplus分页插件total一直为0的解决办法

    1. 注册分页插件( 不注册分页插件total也是0) : 注意:如果是 单数据源 此时分页插件能正常使用,而 如果是多数据源 ,那么就必须添加以下内容,否则分页时查询总数total还是0 2. 多数据源定义: 重点就是以下两行:  Interceptor[] interceptors = new Interceptor[] { mybatisPlusInterc

    2024年04月25日
    浏览(37)
  • 【动态规划之路径问题】路径条数与带障碍物的路径条数

    ⭐️ 前面的话 ⭐️ 本篇文章将介绍动态规划之路径条数的问题,我将通过两道力扣上面的题来介绍使用动态规划来解决路径条数问题以及路上存在障碍物时路径的条数。 📒博客主页:未见花闻的博客主页 🎉欢迎关注🔎点赞👍收藏⭐️留言📝 📌本文由 未见花闻 原创,

    2023年04月09日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包