【BUG】MyBatisPlus分页插件的大坑—— 分页查询 total和pages为0的问题解决 并且有分页记录

本文讲述了在MyBatisPlus项目中遇到的拦截器配置问题,重点介绍了旧版PaginationInterceptor的弃用和如何正确使用MybatisPlusInterceptor进行分页插件配置的解决方案。

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

出现这种情况的可能无非有3种:

(1)没有配置拦截器

(2)有配置拦截器,但是没有在方法上面加上@Bean

(3)使用了旧版的拦截器!!!(大坑)

一、没有配置拦截器

能在百度搜索这个问题的小伙伴,基本不会没有配置拦截器,所以是这种情况的可能性很小

二、有配置拦截器,但是没有在方法上面加上@Bean

@Configuration
@MapperScan("com.Harmony.dao")
public class MyBatisPlusConfig {

    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor() {
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
        interceptor.addInnerInterceptor(new PaginationInnerInterceptor());
        return interceptor;
    }

}

@Bean没有配置,Springboot自然扫描不到该拦截器,所以,写了也白写!!!

三、使用了旧版的拦截器!!!(大坑)

本人这次遇到的!!!

自从mybatis-plus某版本3.4/3.5更新之后,原先的分页插件paginationInterceptor无法正常使用

就是使用了PaginationInnerInterceptor拦截器,这是MyBatisPlus旧版的!基本已经废弃了,在新版的IDEA中会有提示,所以建议使用MybatisPlusInterceptor

@Configuration
@MapperScan("com.Harmony.dao")
public class MyBatisPlusConfig {

    /**
     *     //配置分页插件(过时了!!!)
     *     // 可以用,但是可以total的值会一直显示为0
     *     @Bean
     *     public PaginationInnerInterceptor paginationInnerInterceptor() {
     *         return new PaginationInnerInterceptor();
     *     }
     */

    // 新版本的方法就是  MybatisPlusInterceptor
    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor() {
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
        interceptor.addInnerInterceptor(new PaginationInnerInterceptor());
        return interceptor;
    }

}
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

金鳞踏雨

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

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

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

打赏作者

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

抵扣说明:

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

余额充值