更改新版配置后,分页功能正常,注意
DbType.MYSQL
改为自己使用的数据库类型,否则分页也不生效
老版本的分页配置
@Configuration
public class MybatisPlusConfig {
//3.4.0 之前分页的bean
@Bean
public PaginationInterceptor paginationInterceptor() {
return new PaginationInterceptor();
}
/**
* 防止 修改与删除时对全表进行操作
* @return
*/
@Bean
public BlockAttackInnerInterceptor blockAttackInnerInterceptor(){
return new BlockAttackInnerInterceptor();
}
}
新版本的分页配置
@Configuration
public class MybatisPlusConfig {
/**
* 防止 修改与删除时对全表进行操作
* @return
*/
@Bean
public BlockAttackInnerInterceptor blockAttackInnerInterceptor(){
return new BlockAttackInnerInterceptor();
}
/**
* 新的分页插件,一缓和二缓遵循mybatis的规则,需要设置 MybatisConfiguration#useDeprecatedExecutor = false 避免缓存出现问题
*/
@Bean
public MybatisPlusInterceptor mybatisPlusInterceptor() {
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
return interceptor;
}
/**
* ConfigurationCustomizer,这里引用的是MyBatisPlus自定义的一个和MyBatis同名的接口,com.baomidou.mybatisplus.spring.boot.starter.ConfigurationCustomizer,
* 因此必须使用MyBatisPlus的ConfigurationCustomizer才行
* @return
*/
public ConfigurationCustomizer configurationCustomizer(){
return new ConfigurationCustomizer() {
@Override
public void customize(MybatisConfiguration configuration) {
configuration.setCacheEnabled(true);
configuration.setMapUnderscoreToCamelCase(true);
configuration.setCallSettersOnNulls(true);
configuration.setJdbcTypeForNull(JdbcType.NULL);
}
};
}
}