springboot_mybatis plus 不同mapper(mysql,oracle) 通过aop切换多数据源,dabaseid无效

springboot_mybatis plus 不同mapper(mysql,oracle) 通过aop切换多数据源,dabaseid无效

问题描述:

项目使用springboot+mybatis plus+DynamicDataSource(继承AbstractRoutingDataSource) 通过aop自定义注解,在项目运行中动态改变当前线程切换数据源。resource资源文件下mapper通过oracle/mysql  根据mybatis  databaseid 进行动态区分数据库,执行对应的sql语句   数据库:一个mysql数据库和oracle数据库。进行动态切换。

多数据源切换都是没有问题的,就是手动设置mybatis   dabaseid 不生效

在网上查了一个:https://ask.csdn.net/questions/666602?sort=id

项目中设置了不起作用: sqlSessionFactoryBean.getConfiguration().setDatabaseId("oracle");

主数据源是mysql,从数据库是 mysql和oracle


这里通过aop设置crm oracle数据源  读取的还是 mysql配置。没有动态切换.

下面主数据源设置为oracle,然后重启项目,这里读取的就是oracle。:

如果主数据源和次数据与 都设置相同的mysql,就没有问题,不同的数据库 databaseid 就切换不过去


你可能感兴趣的:(springboot_mybatis plus 不同mapper(mysql,oracle) 通过aop切换多数据源,dabaseid无效)