方案實現
新建兩個配置類(即加@configuration註解的類),乙個為primarydatasourceconfig,用來配置本專案的資料來源;另乙個叫seconddatasourceconfig,用來配置需要同步的資料來源。**如下:
@configuration
再新建兩個配置類,來配置entitymanager與jdbctemplate。**如下:public
class
primarydatasourceconfig
}@configuration
public
class
seconddatasourceconfig
}
@configuration
@enabletransactionmanagement(proxytargetclass = true)//開啟註解管理方式
@enablejparepositories(entitymanage***ctoryref = "entitymanage***ctoryprimary",//指定localcontainerentitymanage***ctorybean
transactionmanagerref = "transactionmanagerprimary",//指定使用哪個entitymanager
basepackages = )//指定該資料來源對於的model包
public
class
repositoryprimaryconfig
@bean(name = "entitymanage***ctoryprimary")
@primary
public localcontainerentitymanage***ctorybean entitymanage***ctory(
entitymanage***ctorybuilder builder)
private mapgetvendorproperties(datasource datasource)
@bean(name = "transactionmanagerprimary")
@primary
platformtransactionmanager transactionmanager(
entitymanage***ctorybuilder builder)
@bean
@primary
public jdbctemplate primaryjdbctemplate(datasource datasource)
}@configuration
@enabletransactionmanagement(proxytargetclass = true)
@enablejparepositories(entitymanage***ctoryref = "entitymanage***ctorysecond",
transactionmanagerref = "transactionmanagersecond",
basepackages = )
public
class
repositorysecondconfig
@bean(name = "entitymanage***ctorysecond")
public localcontainerentitymanage***ctorybean entitymanage***ctory(
entitymanage***ctorybuilder builder)
private mapgetvendorproperties(datasource datasource)
@bean(name = "transactionmanagersecond")
platformtransactionmanager transactionmanager(
entitymanage***ctorybuilder builder)
@bean(name = "secondjdbctemplate")
public jdbctemplate jdbctemplate(
@qualifier("seconddatasource") datasource datasource)
}
當使用第二個資料來源的時候,@autowired時用@qualifier指定第二個資料來源即可。例如要注入jdbctemplate。
@autowired
@qualifier("secondjdbctemplate")
private jdbctemplate jdbctemplate;
如果沒有@qualifier("secondjdbctemplate")
,預設指定primary資料來源。
paoding rose jade多資料來源配置
官網文件沒有相關的說明,所以費了些勁,但是確實很簡單,發出來,希望能幫助到有需要的人 class org.springframework.jdbc.datasource.drivermanagerdatasource name driverclassname value com.mysql.jdbc...
springboot整合多資料來源
多資料來源產生的問題 事物管理 在實際專案中,怎麼樣搭建多資料來源 區分資料來源 舉個例子 2個資料來源 test001 test002 1 分包結構 com.baidu.test001 訪問test001資料庫 daoservice com.baidu.test002 訪問test002資料庫 d...
SpringBoot配置多資料來源
專案中用到了兩個資料庫,分別是oracle和mysql,涉及到了多資料來源問題,這裡做下記錄 官方講解 日誌jdbc配置 druid常見問題彙總 spring datasource type com.alibaba.druid.pool.druiddatasource base type com.a...