使用 mybatisPlus 的 dynamic datasource 配置多数据源中的问题
环境
环境配置参考官方文档: https://github.com/baomidou/dynamic-datasource-spring-boot-starter
问题
既然是想使用多数据源,问题就是按照配置最后没有使用动态切换数据源
需要注意的地方
- 一定要在配置文件中,排除自定义的数据源创建(javax.sql.DataSource)
- 例如:我使用的druid 的数据库连接池,则这里要排除他原来的创建的数据源,可以在配置文件中定义配置项spring.autoconfigure.exclude=com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure
- 查看当前项目中是否有其他地方手动创建了 DataSource
后续查明原因这里,代码未执行就是因为 有其他地方创建了(例如: quartz 等配置类) druid 默认的DataSource,这个数据源只包含一个数据库信息,
一定要使用DynamicRoutingDataSource来创建才行才会包含多个数据源信息