使用 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來創建才行才會包含多個數據源信息