问题
由于某些原因,项目里面需要多数据源,且其中一个是mysql、另一个是oracle,项目里面使用了mybatisplus,看到了有关于多数据源的解决方案dynamic-datasource-spring-boot-starter
,使用了该方案之后,发现查询oracle数据库时如果用到了mybatisplus的分页,也会使用如limit
语句,但是oracle是不支持limit的,所以会报错
解决方案
那这个其实是关于数据库方言如何切换的问题,在mybatisplus中,需要配置一下分页拦截器
@EnableTransactionManagement
@Configuration
public class MybatisPlusConfig {// 最新版@Beanpublic MybatisPlusInterceptor mybatisPlusInterceptor() {MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));return interceptor;