MP 在添加了分页配置后使用 selectPage 返回结果并没有分页
按照 imooc MP 分页查询 里操作的,使用 selectPage 返回结果并没有分页,获取到的当前页数和总记录数页都是 0。
在视频下问答里找到了相同经历的解决方法:为什么分页之后,Sql没有分页。原来是 MP 版本的问题,视频里演示的 MP 版本是 v3.1.0,而这边使用是当前最新的 v3.5.3.1,分页需要添加插件配置,新版本对于插件配置有了变化:
之前的 v3.1.0 左右的:
@Configuration
public class MybatisPlusConfig {
@Bean
public PaginationInnerInterceptor paginationInnerInterceptor() {
return new PaginationInnerInterceptor();
}
}
现在的版本 v3.5.3.1 左右的:
@Configuration
public class MybatisPlusConfig {
@Bean
public MybatisPlusInterceptor mybatisPlusInterceptor() {
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
interceptor.addInnerInterceptor(new PaginationInnerInterceptor());
return interceptor;
}
}
文档里还有一个配置项:
// MybatisConfiguration#useDeprecatedExecutor = false 避免缓存出现问题(该属性会在旧插件移除后一同移除)
@Bean
public ConfigurationCustomizer configurationCustomizer() {
return configuration -> configuration.setUseDeprecatedExecutor(false);
}
根据注释以及实际调用确实找不到 useDeprecatedExecutor 属性,这个部分不需要了,直接去除就好。