springBoot搭建多資料來源

2022-09-13 07:36:13 字數 3500 閱讀 9977

先看一看專案的目錄結構

看完整體的專案結構後,下面開始介紹搭建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

/**

* 配置多資料來源

*/@override

protected

//todo auto-generated method stub

);}

步驟3:專案中更改或增加如圖紅色部分包和資料夾路徑

注意:1和2的名稱要一致

步驟4:編寫datasourceconfigfirst.j**a和datasourceconfigsecond.j**a

datasourceconfigfirst.j**a源**

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.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)

}

datasourceconfigsecond.j**a源**

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...