解决Mybatis-Plus中分页插件Page中total=0的问题
作者:夕夕夕兮
在使用Mybatis-Plus进行分页查询时,如果遇到`total=0`的情况,即使查询到了数据,也无法正确分页,这通常是由于依赖版本问题导致的,对于低版本,需要手动配置分页拦截器;对于高版本,可能需要添加特定的依赖配置来解决这个问题
Mybatis-Plus中分页插件Page中total=0
场景
分页查询时可以查到数据,total为0,分不了页,但是list中是有数据的
Mybatis-plus依赖
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.3</version>
</dependency>
原因
数据能查询出来,但是分页的total总是为0,发现查询的过程中没有进入分页拦截器(PaginationInterceptor)
解决问题
- 低版本
@Configuration
public class MybatisPlusConfig {
/**
* 分页插件
*/
@Bean
public PaginationInterceptor paginationInterceptor() {
return new PaginationInterceptor();
}
}
- 高版本
- 加入依赖
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-extension</artifactId>
<version>3.4.3</version>
</dependency>
- 配置
@Configuration
public class MybatisPlusConfig {
/**
* 分页插件
*/
@Bean
public MybatisPlusInterceptor mybatisPlusInterceptor() {
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
return interceptor;
}
}
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
