Mybatis 中使用pageHelper插件及注意事项

本文介绍了如何在Mybatis中使用PageHelper插件实现分页功能,包括导入依赖、添加配置和应用步骤。同时,文章强调了在使用过程中需要注意的分页失效问题,分析了可能的原因——依赖引入不当或分页语句位置错误,并提供了更换依赖或调整代码结构的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

别的不多说,简单介绍一下使用这个插件的步骤:

  1. 导入依赖
  2. 添加配置
  3. 应用

第一步:导入依赖

<!-- mybatis的分页 -->
        <dependency>
            <groupId>com.github.pagehelper</groupId>
            <artifactId>pagehelper-spring-boot-starter</artifactId>
            <version>${pagehelper.version}</version>
        </dependency>

第二步:添加配置

#mybatis-pagehelper的配置
pagehelper:
  helper-dialect: mysql
  reasonable: true
  supportMethodsArguments: true
  params: count=countSql

第三步:应用

PageHelper.startPage(pageNum,pageSize);
List list = examinationOptionsMapper.selectByCourseId(courseId);
PageInfo<ExaminationOptions> infoDetailFrontEndPageInfo = new PageInfo<ExaminationOptions>(list);

到此完成,就可以满足分页的功能。但是,也需要特别注意一下问题。

注意事项:

🖤why:pageHelper中存在分页失效的问题。

🖤原因:

  • 引入的依赖问题(我直接引入的是上述的依赖,而不是再github上项目文档中的依赖)。
  • pagehelper里边的PageHelper.startPage(1,10); 只对该语句以后的第一个查询语句添加分页查询。

🖤解决方式:

  • 第一种情况:更换依赖
  • 第二种情况:
    • 错误场景:我在controller中调用service的接口,此时,直接把分页的应用步骤写在了controller中。分页失效
    • 原因:我在service中对业务的处理并不是只访问了一次数据库。
    • 实际分页语句:在service中的第一条SQL语句
    • 解决方式:把分页放到你具体的要进行分页的请求时
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值