一、前言
springboot整合多数据源解决分布式事务。
1.多数据源采用分包策略
2.全局分布式事务管理:jta-atomikos。
在此记录下,分享给大家。
二、springboot整合多数据源解决分布式事务
1、pom文件 依赖引入
org.springframework.boot
spring-boot-starter-parent
2.1.8.RELEASE
org.springframework.boot
spring-boot-starter-test
test
org.springframework.boot
spring-boot-starter-web
org.mybatis.spring.boot
mybatis-spring-boot-starter
1.1.1
mysql
mysql-connector-java
5.1.38
org.springframework.boot
spring-boot-starter-jta-atomikos
org.springframework.boot
spring-boot-configuration-processor
true
org.projectlombok
lombok
1.18.4
2、application.yml新增配置
spring:
datasource:
##用户数据库
user:
url: jdbc:mysql://127.0.0.1:3306/yys_user
username: root
password:123456
borrowConnectionTimeout:30
loginTimeout:30
maintenanceInterval:60
maxIdleTime:60
maxLifetime:20000
maxPoolSize:25
minPoolSize:3
uniqueResourceName:
userDataSource
testQuery: select1
##订单数据库
order:
url: jdbc:mysql://127.0.0.1:3306/yys_order
username: root
password:123456
borrowConnectionTimeout:30
loginTimeout:30
maintenanceInterval:60
maxIdleTime:60
maxLifeTime:20000
maxPoolSize:25
minPoolSize:3
uniqueResourceName:
orderDataSource
testQuery: select1
3、userConfig.java
@ConfigurationProperties(prefix ="spring.datasource.user")
@Data
publicclassUserConfig{
private String url;