1.切换数据源不生效
mybatisPlus中,提供了切换数据源的注解@DS(“”)
但是发现注解并不生效,此时可能性有以下几种:
- @DS注解使用的接口中,一步一步查找是不是使用了
@Transactional(rollbackFor = Exception.class)
注解,此时注意,应该使用@DSTransactional
注解来回滚事务 - 检查配置的数据源值是否和@DS(“value”)的value一致,如果不一致也是没办法切换的。
2.分页不生效
MySQL的
limit
再Oracle中不能使用,Oracle中使用的是ROWNUM
,所以分页会提示sql错误。
此时找到mybatisplus中分页配置,找到一下代码,这两个同时配置也不会生效,此时需要把数据库类型参数去掉:mybatisPlusInterceptor.addInnerInterceptor(new PaginationInnerInterceptor());
这样就会自动根据数据库类型进行分页查询
mybatisPlusInterceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.ORACLE));
mybatisPlusInterceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));