项目前期使用springboot+aop配置动态切换数据源,有个需求需要在同一个方法内用到两个数据源资源,折腾半天后,发现还是有点无能为力,单独执行一个方法可以切换,只要涉及嵌套就切换失败,最后选择使用分包形式配置,完美解决。
数据源配置
spring.datasource.dynamic.primary = master
spring.datasource.master.type = com.alibaba.druid.pool.DruidDataSource
spring.datasource.master.driver-class-name = com.p6spy.engine.spy.P6SpyDriver
spring.datasource.master.jdbc-url = jdbc:p6spy:postgresql://192.168.10.130:5432/yndz?currentSchema=public
spring.datasource.master.username = postgres
spring.datasource.master.password = postgres
spring.datasource.slave.type = com.alibaba.druid.pool.DruidDataSource
spring.datasource.slave.driver-class-name = com.p6spy.engine.spy.P6SpyDriver
spring.datasource.slave.jdbc-url = jdbc:p6spy:postgresql://192.168.10.130:5432/gedi?currentSchema=public
spring.datasource.slave.username = postgres
spring.datasource.slave.password = postgres
pom依赖配置
<!-- mybatis plus依赖包 -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.1.1</version>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>dynamic-datasource-spring-boot-starter</artifactId>
<version>2.5.6</ve