先看一看專案的目錄結構
看完整體的專案結構後,下面開始介紹搭建springboot的多資料來源搭建步驟。
#第乙個資料庫spring.datasource.first.driver-class-name = oracle.jdbc.oracledriver
spring.datasource.first.jdbc-url = jdbc:oracle:thin:@127.0.0.1:1521:orcl
spring.datasource.first.username = admin
spring.datasource.first.password = admin
#第二個資料庫
spring.datasource.second.driver-class-name=oracle.jdbc.oracledriver
spring.datasource.second.jdbc-url=jdbc:oracle:thin:@127.0.0.1:1521:orcl
spring.datasource.second.username=admin
spring.datasource.second.password=admin
/**步驟3:專案中更改或增加如圖紅色部分包和資料夾路徑* 配置多資料來源
*/@override
protected
//todo auto-generated method stub
);}
注意:1和2的名稱要一致
步驟4:編寫datasourceconfigfirst.j**a和datasourceconfigsecond.j**a
datasourceconfigfirst.j**a源**
import j**ax.sql.datasource;datasourceconfigsecond.j**a源**import org.apache.ibatis.session.sqlsessionfactory;
import org.mybatis.spring.sqlsessionfactorybean;
import org.mybatis.spring.sqlsessiontemplate;
import org.springframework.beans.factory.annotation.qualifier;
import org.springframework.boot.context.properties.configurationproperties;
import org.springframework.boot.jdbc.datasourcebuilder;
import org.springframework.context.annotation.bean;
import org.springframework.context.annotation.configuration;
import org.springframework.context.annotation.primary;
import org.springframework.core.io.support.pathmatchingresourcepatternresolver;
//表示這個類為乙個配置類
@configuration
//配置mybatis的介面類放的地方
public class datasourceconfigfirst
@bean(name = "firstsqlsessionfactory")
// 表示這個資料來源是預設資料來源
@primary
// @qualifier表示查詢spring容器中名字為firstdatasource的物件
public sqlsessionfactory firstsqlsessionfactory(@qualifier("firstdatasource") datasource datasource)
throws exception
@bean("firstsqlsessiontemplate")
// 表示這個資料來源是預設資料來源
@primary
public sqlsessiontemplate firstsqlsessiontemplate(
@qualifier("firstsqlsessionfactory") sqlsessionfactory sessionfactory)
}
import j**ax.sql.datasource;import org.apache.ibatis.session.sqlsessionfactory;
import org.mybatis.spring.sqlsessionfactorybean;
import org.mybatis.spring.sqlsessiontemplate;
import org.springframework.beans.factory.annotation.qualifier;
import org.springframework.boot.context.properties.configurationproperties;
import org.springframework.boot.jdbc.datasourcebuilder;
import org.springframework.context.annotation.bean;
import org.springframework.context.annotation.configuration;
import org.springframework.core.io.support.pathmatchingresourcepatternresolver;
@configuration
public class datasourceconfigsecond
@bean(name = "secondsqlsessionfactory")
public sqlsessionfactory secondsqlsessionfactory(@qualifier("seconddatasource") datasource datasource)
throws exception
@bean("secondsqlsessiontemplate")
public sqlsessiontemplate secondsqlsessiontemplate(
@qualifier("secondsqlsessionfactory") sqlsessionfactory sessionfactory)
}
Spring Boot多資料來源配置
方案實現 新建兩個配置類 即加 configuration註解的類 乙個為primarydatasourceconfig,用來配置本專案的資料來源 另乙個叫seconddatasourceconfig,用來配置需要同步的資料來源。如下 configuration public class prima...
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...