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

出现这种情况的可能无非有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;
    }

}
posted @ 2022-05-23 16:38  金鳞踏雨  阅读(1061)  评论(0编辑  收藏  举报  来源