最近写分页的时候,遇到了分页无法正常发挥作用的问题,按照官方文档配置了MybatisPlusConfig拦截器
官方链接
https://baomidou.com/guide/interceptor.html
@Configuration
@ConditionalOnClass(value = {MybatisPlusConfig.class})
public class MybatisPlusConfig{
*//**
* 新的分页插件,一缓和二缓遵循mybatis的规则,需要设置 MybatisConfiguration#useDeprecatedExecutor = false 避免缓存出现问题(该属性会在旧插件移除后一同移除)
*//*
@Bean
public MybatisPlusInterceptor mybatisPlusInterceptor() {
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.POSTGRE_SQL));
return interceptor;
}
}
但是并没有正常的发挥作用,最后发现原因,是由于我配置了双数据源,从而导致了该拦截器配置无法发挥作用,应该在数据源配置类中配置分页拦截器
//分页插件
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.POSTGRE_SQL));
sqlSessionFactory.setPlugins(new Interceptor[]{interceptor});
这样就解决了分页失效的问题