From b8ba4aebc95eb7beeacab5b0e92cf7e7deb49d45 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=A7=A6=E8=8B=B1=E6=9D=B0?= <327782001@qq.com>
Date: Sun, 19 Feb 2023 21:01:13 +0800
Subject: [PATCH] =?UTF-8?q?fix:=E5=8D=95=E4=BD=93=E6=9C=8D=E5=8A=A1?=
=?UTF-8?q?=E4=BD=BF=E7=94=A8seata?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
pom.xml | 5 +
.../service/impl/PersonServiceImpl.java | 5 +-
.../service/impl/UserServiceImpl.java | 2 +
...ication-bak.yaml => application-bak1.yaml} | 44 +-------
src/main/resources/application-bak2.yaml | 15 +++
src/main/resources/application-bak3.yaml | 102 ++++++++++++++++++
src/main/resources/application.yaml | 19 +++-
7 files changed, 145 insertions(+), 47 deletions(-)
rename src/main/resources/{application-bak.yaml => application-bak1.yaml} (66%)
create mode 100644 src/main/resources/application-bak3.yaml
diff --git a/pom.xml b/pom.xml
index 49534a1..ab3dc48 100644
--- a/pom.xml
+++ b/pom.xml
@@ -134,6 +134,11 @@
seata-spring-boot-starter
1.4.0
+
+ com.baomidou
+ dynamic-datasource-spring-boot-starter
+ 3.5.1
+
diff --git a/src/main/java/com/kwan/springbootkwan/service/impl/PersonServiceImpl.java b/src/main/java/com/kwan/springbootkwan/service/impl/PersonServiceImpl.java
index ea7cb7a..de7c46a 100644
--- a/src/main/java/com/kwan/springbootkwan/service/impl/PersonServiceImpl.java
+++ b/src/main/java/com/kwan/springbootkwan/service/impl/PersonServiceImpl.java
@@ -1,5 +1,6 @@
package com.kwan.springbootkwan.service.impl;
+import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.kwan.springbootkwan.entity.Person;
import com.kwan.springbootkwan.mapper.PersonMapper;
@@ -13,11 +14,11 @@ public class PersonServiceImpl extends ServiceImpl impleme
@Autowired
private PersonMapper personMapper;
- // @DS(value ="ali-ds" )
+ @DS(value = "ali-ds")
@Override
public Person savePerson(Person person) {
personMapper.insert(person);
- final int i = 1 / 0;
+// final int i = 1 / 0;
return person;
}
}
diff --git a/src/main/java/com/kwan/springbootkwan/service/impl/UserServiceImpl.java b/src/main/java/com/kwan/springbootkwan/service/impl/UserServiceImpl.java
index 79ddf56..8b3899e 100644
--- a/src/main/java/com/kwan/springbootkwan/service/impl/UserServiceImpl.java
+++ b/src/main/java/com/kwan/springbootkwan/service/impl/UserServiceImpl.java
@@ -1,5 +1,6 @@
package com.kwan.springbootkwan.service.impl;
+import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.kwan.springbootkwan.entity.Person;
import com.kwan.springbootkwan.entity.User;
@@ -40,6 +41,7 @@ public class UserServiceImpl extends ServiceImpl implements IU
return userByName;
}
+ @DS(value = "kwan-ds")
@GlobalTransactional
@Override
public User saveUser(User user) {
diff --git a/src/main/resources/application-bak.yaml b/src/main/resources/application-bak1.yaml
similarity index 66%
rename from src/main/resources/application-bak.yaml
rename to src/main/resources/application-bak1.yaml
index 804b99a..2ef682e 100644
--- a/src/main/resources/application-bak.yaml
+++ b/src/main/resources/application-bak1.yaml
@@ -1,3 +1,4 @@
+#这个配置是原始配置,不带seata
server:
port: 8761
servlet:
@@ -11,8 +12,6 @@ swagger:
#兼容swagger配置
spring:
- application:
- name: spring-boot-demo
#项目启动时创建数据表的 SQL 脚本,该脚本由 Spring Batch 提供
#spring.datasource.schema=classpath:/org/springframework/batch/core/schema-mysql.sql
# 在项目启动时执行建表 SQL
@@ -50,48 +49,11 @@ spring:
matching-strategy: ant_path_matcher
# mysql
datasource:
- url: jdbc:mysql://localhost:3306/kwan?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
driver-class-name: com.mysql.cj.jdbc.Driver
+ url: jdbc:mysql://localhost:3306/kwan?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
username: root
password: 716288qwe
-
-# dynamic:
-# primary: kwan-ds
-# datasource:
-# kwan-ds:
-# url: jdbc:mysql://localhost:3306/kwan?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
-# driver-class-name: com.mysql.cj.jdbc.Driver
-# username: root
-# password: 716288qwe
-## ali-ds:
-## url: jdbc:mysql://localhost:3306/spring-boot?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
-## driver-class-name: com.mysql.cj.jdbc.Driver
-## username: root
-## password: 1716288qwe
-# seata: true
-# cloud:
-# nacos:
-# discovery:
-# server-addr: http://120.79.36.53:8848 #服务注册地址
-# config:
-# enabled: false
-
-#seata配置
-seata:
- enable-auto-data-source-proxy: false
- application-id: ${spring.application.name}
- tx-service-group: ${spring.application.name}-group
- service:
- vgroup-mapping:
- spring-boot-demo-group: default
- grouplist:
- default: 127.0.0.1:8091
- config:
- type: file
- registry:
- type: file
-
#mybatis-plus配置
mybatis-plus:
configuration:
@@ -112,4 +74,4 @@ mybatis-plus:
#logger配置
logging:
- config: classpath:logback-spring.xml
+ config: classpath:logback-spring.xml
\ No newline at end of file
diff --git a/src/main/resources/application-bak2.yaml b/src/main/resources/application-bak2.yaml
index a8b9276..c89b707 100644
--- a/src/main/resources/application-bak2.yaml
+++ b/src/main/resources/application-bak2.yaml
@@ -1,3 +1,4 @@
+#这个配置是单数据库seata
server:
port: 8761
servlet:
@@ -11,6 +12,8 @@ swagger:
#兼容swagger配置
spring:
+ application:
+ name: spring-boot-name
#项目启动时创建数据表的 SQL 脚本,该脚本由 Spring Batch 提供
#spring.datasource.schema=classpath:/org/springframework/batch/core/schema-mysql.sql
# 在项目启动时执行建表 SQL
@@ -53,6 +56,18 @@ spring:
username: root
password: 716288qwe
+seata:
+ application-id: spring-boot-name
+ tx-service-group: my-tx-group
+ service:
+ vgroup-mapping:
+ my-tx-group: seata-server
+ grouplist:
+ seata-server: 127.0.0.1:8091
+ enabled: true
+
+
+
#mybatis-plus配置
mybatis-plus:
configuration:
diff --git a/src/main/resources/application-bak3.yaml b/src/main/resources/application-bak3.yaml
new file mode 100644
index 0000000..5027a85
--- /dev/null
+++ b/src/main/resources/application-bak3.yaml
@@ -0,0 +1,102 @@
+#不同库不同表,带seata
+server:
+ port: 8761
+ servlet:
+ encoding:
+ force: true
+ charset: UTF-8
+ enabled: true
+
+swagger:
+ enable: true
+
+#兼容swagger配置
+spring:
+ application:
+ name: spring-boot-name
+ #项目启动时创建数据表的 SQL 脚本,该脚本由 Spring Batch 提供
+ #spring.datasource.schema=classpath:/org/springframework/batch/core/schema-mysql.sql
+ # 在项目启动时执行建表 SQL
+ batch:
+ initialize-schema: always
+ # 禁止 Spring Batch 自动执行,在 SpringBoot 中,默认情况,当项目启动时就会执行配置好的批理操作,添加了该配置后则不会自动执行,而需要用户手动触发执行
+ job:
+ enabled: false
+ mail:
+ host: smtp.qq.com
+ # 发送者的邮箱账号
+ username: 327782001@qq.com
+ # 邮箱密码授权码
+ password: kypxnmwfniqrcbeh
+ properties:
+ mail:
+ smtp:
+ auth: true
+ starttls:
+ enable: true
+ required: true
+ redis:
+ database: 0 # Redis数据库索引(默认为0)
+ host: 120.79.36.53 #Redis服务器地址
+ port: 6379 # Redis服务器连接端口
+ password: # Redis服务器连接密码(默认为空)
+ jedis:
+ pool:
+ max-active: 200 # 连接池最大连接数(使用负值表示没有限制)
+ max-idle: 10 # 连接池中的最大空闲连接
+ min-idle: 0 # 连接池中的最小空闲连接
+ max-wait: -1 # 连接池最大阻塞等待时间(使用负值表示没有限制)
+ mvc:
+ pathmatch:
+ matching-strategy: ant_path_matcher
+ # mysql
+ datasource:
+ dynamic:
+ seata: true
+ primary: kwan-ds
+ datasource:
+ kwan-ds:
+ driver-class-name: com.mysql.cj.jdbc.Driver
+ url: jdbc:mysql://localhost:3306/kwan?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
+ username: root
+ password: 716288qwe
+ ali-ds:
+ driver-class-name: com.mysql.cj.jdbc.Driver
+ url: jdbc:mysql://120.79.36.53:3306/kwan?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
+ username: root
+ password: 15671628341Qwe.
+
+
+seata:
+ application-id: spring-boot-name
+ tx-service-group: my-tx-group
+ service:
+ vgroup-mapping:
+ my-tx-group: seata-server
+ grouplist:
+ seata-server: 127.0.0.1:8091
+ enabled: true
+
+
+
+#mybatis-plus配置
+mybatis-plus:
+ configuration:
+ map-underscore-to-camel-case: true
+ call-setters-on-nulls: true
+ auto-mapping-behavior: full
+ log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
+ mapper-locations: classpath*:mapper/**/*Mapper.xml
+ global-config:
+ banner: false
+ # 逻辑删除配置
+ db-config:
+ id-type: AUTO
+ logic-delete-field: delFlag
+ logic-delete-value: 1
+ logic-not-delete-value: 0
+ table-underline: true
+
+#logger配置
+logging:
+ config: classpath:logback-spring.xml
\ No newline at end of file
diff --git a/src/main/resources/application.yaml b/src/main/resources/application.yaml
index c03f88e..bbed000 100644
--- a/src/main/resources/application.yaml
+++ b/src/main/resources/application.yaml
@@ -50,10 +50,21 @@ spring:
matching-strategy: ant_path_matcher
# mysql
datasource:
- driver-class-name: com.mysql.cj.jdbc.Driver
- url: jdbc:mysql://localhost:3306/kwan?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
- username: root
- password: 716288qwe
+ dynamic:
+ seata: true
+ primary: kwan-ds
+ datasource:
+ kwan-ds:
+ driver-class-name: com.mysql.cj.jdbc.Driver
+ url: jdbc:mysql://localhost:3306/kwan?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
+ username: root
+ password: 716288qwe
+ ali-ds:
+ driver-class-name: com.mysql.cj.jdbc.Driver
+ url: jdbc:mysql://120.79.36.53:3306/kwan?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
+ username: root
+ password: 15671628341Qwe.
+
seata:
application-id: spring-boot-name
--
GitLab