当前位置: 首页 > 工具软件 > iPage > 使用案例 >

MybatisPlus IPage分页无效

尹弘壮
2023-12-01

1、检查依赖是否正确

<!-- Mybatis带分页插件 -->
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>${mybatis-plus.version}</version>
</dependency>

2、检查是否添加配置文件

MybatisPlusConfig.java


${mybatis-plus.version}=3.2.0

旧版本
@Configuration
@EnableTransactionManagement
@MapperScan( { "com.cat.coder.dao" })
public class MybatisPlusConfig {

    @Bean
    public PaginationInterceptor paginationInterceptor() {
        return new PaginationInterceptor().setDialectType("mysql");
    }

}


新版本
${mybatis-plus.version}=3.4.0


@Configuration
@EnableTransactionManagement
@MapperScan( { "com.cat.coder.dao" })
public class MybatisPlusConfig {

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

}

3、如果自定义了SqlSessionFactory(自行根据版本替换插件)

MybatisPlusConfig.java


@Configuration
@EnableTransactionManagement
@MapperScan( { "com.cat.coder.dao" })
public class MybatisPlusConfig {

    @Bean(name = "session_factory")
    public SqlSessionFactory sqlSessionFactory(@Qualifier("cat") DataSource dataSource) throws Exception {
        
        // 其它代码 .....

        //关键代码 设置 MyBatis-Plus 分页插件
        Interceptor[] plugins = {paginationInterceptor()};
        sqlSessionFactoryBean.setPlugins(plugins);
        
        // 其它代码 .....

        return sqlSessionFactoryBean.getObject();
    }

    @Bean
    public PaginationInterceptor paginationInterceptor() {
        return new PaginationInterceptor().setDialectType("mysql");
    }

}

 类似资料: