苞公尺豆多資料來源配置,跨資料來源業務操作注意事項

2021-10-14 03:10:38 字數 1424 閱讀 7750

苞公尺豆多資料配置在pom.xml使用

com.alibaba

druid-spring-boot-starter

1.1.22

注意:需要使用1.1.22以上版本,具體原因參看注意事項切換資料來源失敗原因

在使用時可以使用如下資料來源配置,預設使用two資料來源

datasource:

druid:

stat-view-servlet:

enabled: false # 監控關閉

dynamic:

primary: two # 設定預設的資料來源或者資料來源組,預設值即為master

strict: false # 設定嚴格模式,預設false不啟動. 啟動後在未匹配到指定資料來源時候會丟擲異常,不啟動則使用預設資料來源.

datasource:

one:

driver-class-name: com.mysql.cj.jdbc.driver

url: jdbc:mysql:

username: root

password: 111111

two:

driver-class-name: com.mysql.cj.jdbc.driver

url: jdbc:mysql:

username: root

password: 111111

druid: # 以下是支援的全域性預設值

maxactive: 10

initialsize: 2

minidle: 2

timebetweenevictionrunsmillis: 60000

minevictableidletimemillis: 300000

validationquery: select 'x'

testwhileidle: true

testonborrow: false

testonreturn: false

poolpreparedstatements: false

filters: stat,slf4j

maxwait: 60000

各個資料來源都會有對應的業務service,每個對應資料來源表的service最好只做本資料來源的業務,避免跨源操作業務失敗,需要跨源操作的service通過多個資料來源的service組合來實現業務操作

跨資料來源的業務如果要使用事務,請使用@dstransactional註解,否則會出現切換資料來源失敗的情況,如果不存在跨資料來源業務,事務可以直接使用@transactional註解

這裡需要注意:事務註解在方法上,不要放在類上,放在類上會導致該類 的所有方法都開啟事務,影響效率,即使註解在方法上,也需要注意,事務註解的方法盡量只包含插入或者更新操作,不要包含查詢操作,避免事務過大導致的異常,或者影響效率

Spring 配置單資料來源和多資料來源

如何配置多資料來源?1.spring直接配置所需的bean 事務相關 可選 操作相關 可選 2.springboot做了哪些配置?符合條件時才進行配置。1 spring boot中預設資料來源的發展 spring boot 1.x 預設使用tomcat的datasource。spring boot ...

spring mvc 多資料來源配置

首先配置兩個資料庫 2 再配置乙個datasource 管理 key 值和value值對應,預設選擇datasourcea 其他配置按照正常的spring mvc 配置即可。3 sessionfactory 中使用 datasource做資料來源。4 新建乙個dynamicdatasource類繼承...

spring多資料來源配置

前段時間由於公司專案需求,需要多資料來源的支援,苦b折騰了兩天程式猿,話不多說,直接擼碼。classpath jdbc.properties select 1 true select 1 true org.hibernate.dialect.mysqldialect false update tru...