From 52b4c279edbbb2b7b68dcc8a7c2f22f7e6c2ec40 Mon Sep 17 00:00:00 2001
From: KingMo <haotian2546@163.com>
Date: 星期日, 04 九月 2022 19:16:32 +0800
Subject: [PATCH] feature(yml): 增加*-dynamic.yml配置文件,动态化数据库系列参数,便于快速切换库
---
java110-db/src/main/java/com/java110/db/DataSourceConfig.java | 14 ++++++++++++++
1 files changed, 14 insertions(+), 0 deletions(-)
diff --git a/java110-db/src/main/java/com/java110/db/DataSourceConfig.java b/java110-db/src/main/java/com/java110/db/DataSourceConfig.java
index 38cf6bd..8f9dcf9 100755
--- a/java110-db/src/main/java/com/java110/db/DataSourceConfig.java
+++ b/java110-db/src/main/java/com/java110/db/DataSourceConfig.java
@@ -1,5 +1,6 @@
package com.java110.db;
+import com.java110.utils.util.StringUtil;
import org.apache.shardingsphere.shardingjdbc.api.yaml.YamlShardingDataSourceFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
@@ -48,6 +49,19 @@
String configString = new String(getYmlFile(path), "UTF-8");
configString = configString.replaceAll("\\$\\{mysqlpwd\\}", env.getProperty("mysqlpwd"));
+ String mysqlPort = StringUtil.isEmpty(env.getProperty("mysqlport")) ? "3306" : env.getProperty("mysqlport");
+ configString = configString.replaceAll("\\$\\{mysqlport\\}", mysqlPort);
+
+ String dbttname = StringUtil.isEmpty(env.getProperty("dbttname")) ? "TT" : env.getProperty("dbttname");
+ String dbttuser = StringUtil.isEmpty(env.getProperty("dbttuser")) ? "TT" : env.getProperty("dbttuser");
+ String dbhcname = StringUtil.isEmpty(env.getProperty("dbhcname")) ? "hc_community" : env.getProperty("dbhcname");
+ String dbhcuser = StringUtil.isEmpty(env.getProperty("dbhcuser")) ? "hc_community" : env.getProperty("dbhcuser");
+
+ configString = configString.replaceAll("\\$\\{dbttname\\}", dbttname)
+ .replaceAll("\\$\\{dbttuser\\}", dbttuser)
+ .replaceAll("\\$\\{dbhcname\\}", dbhcname)
+ .replaceAll("\\$\\{dbhcuser\\}", dbhcuser);
+
return YamlShardingDataSourceFactory.createDataSource(configString.getBytes("UTF-8"));
}
--
Gitblit v1.8.0