main
黄海 10 months ago
parent 2c986e5915
commit b0c4d04476

@ -65,6 +65,11 @@
<artifactId>okhttp</artifactId> <artifactId>okhttp</artifactId>
<version>4.12.0</version> <version>4.12.0</version>
</dependency> </dependency>
<!-- https://mvnrepository.com/artifact/org.yaml/snakeyaml -->
<dependency>
<groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId>
<version>${snakeyaml.version}</version>
</dependency>
</dependencies> </dependencies>
</project> </project>

@ -2,10 +2,10 @@ package com.dsideal.gw;
import cn.hutool.core.io.FileUtil; import cn.hutool.core.io.FileUtil;
import com.dsideal.gw.Handler.RouterHandler; import com.dsideal.gw.Handler.RouterHandler;
import com.dsideal.gw.Plugin.YamlProp;
import com.dsideal.gw.Util.LogBackLogFactory; import com.dsideal.gw.Util.LogBackLogFactory;
import com.jfinal.config.*; import com.jfinal.config.*;
import com.jfinal.kit.Prop; import com.jfinal.kit.Prop;
import com.jfinal.kit.PropKit;
import com.jfinal.server.undertow.UndertowServer; import com.jfinal.server.undertow.UndertowServer;
import com.jfinal.template.Engine; import com.jfinal.template.Engine;
@ -37,12 +37,11 @@ public class GwApplication extends JFinalConfig {
//使用LogBack //使用LogBack
me.setLogFactory(new LogBackLogFactory()); me.setLogFactory(new LogBackLogFactory());
//加载配置文件 //加载配置文件
String configFile = "application_{?}.properties".replace("{?}", getEnvPrefix()); String configFile = "application_{?}.yaml".replace("{?}", getEnvPrefix());
Prop prop = PropKit.use(configFile); Prop prop = new YamlProp(configFile);
// 获取所有配置项,得到路由表 // 获取所有配置项,得到路由表
for (Map.Entry<Object, Object> entry : prop.getProperties().entrySet()) { for (Map.Entry<Object, Object> entry : prop.getProperties().entrySet()) {
if (entry.getKey().toString().startsWith("route_")) { if (entry.getKey().toString().startsWith("route")) {
routeDict.put(entry.getKey().toString().substring(6), entry.getValue().toString()); routeDict.put(entry.getKey().toString().substring(6), entry.getValue().toString());
} }
} }

@ -0,0 +1,47 @@
package com.dsideal.gw.Plugin;
import com.jfinal.kit.Prop;
import org.yaml.snakeyaml.Yaml;
import java.io.InputStream;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Properties;
public class YamlProp extends Prop {
public YamlProp(String yamlFile) {
setYaml(yamlFile);
}
private void setYaml(String yamlFile) {
LinkedHashMap map = null;
Properties properties = new Properties();
InputStream in;
try {
Yaml yaml = new Yaml();
in = YamlProp.class.getClassLoader().getResourceAsStream(yamlFile);
map = yaml.loadAs(in, LinkedHashMap.class);
} catch (Exception e) {
e.printStackTrace();
}
setProperties(properties, map, "");
this.properties = properties;
}
private static void setProperties(Properties properties, Map map, String prefix) {
for (Object key : map.keySet()) {
Object value = map.get(key);
if (key == null) {
continue;
}
if (value instanceof Map) {
setProperties(properties, (Map) value, prefix + key + ".");
} else {
if (value == null) {
continue;
}
properties.setProperty(prefix + key, value.toString());
}
}
}
}

@ -1,20 +0,0 @@
# 数据库信息
driverClassName=com.mysql.cj.jdbc.Driver
user=root
password=DsideaL147258369
jdbcUrl=jdbc:mysql://10.10.14.210:22066/ds_db?rewriteBatchedStatements=true&useUnicode=true&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
# redis
redis_ip=10.10.14.210
redis_port=18890
redis_password=
# ==============================================================
# 生成Token的密码
CookieMd5SingPwd=DsideaL4r5t6y7u
# 导出excel 的模板配置路径
excelExportTemplatePathSuffix=/ExcelExportTemplate/
# 导入excel 的模板配置路径
ExcelImportTemplatePathSuffix=/ExcelImportTemplate/
# 基础数据
route_ds-base= http://ds-base:8001

@ -0,0 +1,12 @@
# 路由
route:
# 基础数据
ds-base:
url: http://ds-base:8001
# 资源库
ds-resource:
url: http://ds-resouce:8002
# 白名单
whitelist:
- /ds-base/doLogin

@ -1,19 +0,0 @@
# 数据库信息
driverClassName=com.mysql.cj.jdbc.Driver
user=ylt
password=Ycharge666
jdbcUrl=jdbc:mysql://rm-bp1ux6tuk49er80t9.mysql.rds.aliyuncs.com:3306/ds_db?useUnicode=true&characterEncoding=UTF-8
# redis
redis_ip=r-bp14c1p5j5lkpw1jc2.redis.rds.aliyuncs.com
redis_port=6379
redis_password=Ycharge666
# ==============================================================
# 生成Token的密码
CookieMd5SingPwd=DsideaL4r5t6y7u
# 导出excel 的模板配置路径
excelExportTemplatePathSuffix=/ExcelExportTemplate/
# 导入excel 的模板配置路径
ExcelImportTemplatePathSuffix=/ExcelImportTemplate/
# 基础数据
route_ds-base= http://ds-base:8001

@ -0,0 +1,12 @@
# 路由
route:
# 基础数据
ds-base:
url: http://ds-base:8001
# 资源库
ds-resource:
url: http://ds-resouce:8002
# 白名单
whitelist:
- /ds-base/doLogin

@ -1,20 +0,0 @@
# 数据库信息
driverClassName=com.mysql.cj.jdbc.Driver
user=root
password=DsideaL147258369
jdbcUrl=jdbc:mysql://10.10.14.210:22066/ds_db?rewriteBatchedStatements=true&useUnicode=true&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
# redis
redis_ip=10.10.14.210
redis_port=18890
redis_password=
# ==============================================================
# 生成Token的密码
CookieMd5SingPwd=DsideaL4r5t6y7u
# 导出excel 的模板配置路径
excelExportTemplatePathSuffix=/ExcelExportTemplate/
# 导入excel 的模板配置路径
ExcelImportTemplatePathSuffix=/ExcelImportTemplate/
# 基础数据
route_ds-base= http://ds-base:8001

@ -0,0 +1,12 @@
# 路由
route:
# 基础数据
ds-base:
url: http://ds-base:8001
# 资源库
ds-resource:
url: http://ds-resouce:8002
# 白名单
whitelist:
- /ds-base/doLogin

@ -1,19 +0,0 @@
# 数据库信息
driverClassName=com.mysql.cj.jdbc.Driver
user=ylt
password=Ycharge666
jdbcUrl=jdbc:mysql://rm-bp1ux6tuk49er80t9.mysql.rds.aliyuncs.com:3306/ds_db?useUnicode=true&characterEncoding=UTF-8
# redis
redis_ip=r-bp14c1p5j5lkpw1jc2.redis.rds.aliyuncs.com
redis_port=6379
redis_password=Ycharge666
# ==============================================================
# 生成Token的密码
CookieMd5SingPwd=DsideaL4r5t6y7u
# 导出excel 的模板配置路径
excelExportTemplatePathSuffix=/ExcelExportTemplate/
# 导入excel 的模板配置路径
ExcelImportTemplatePathSuffix=/ExcelImportTemplate/
# 基础数据
route_ds-base= http://ds-base:8001

@ -0,0 +1,12 @@
# 路由
route:
# 基础数据
ds-base:
url: http://ds-base:8001
# 资源库
ds-resource:
url: http://ds-resouce:8002
# 白名单
whitelist:
- /ds-base/doLogin

@ -44,5 +44,8 @@
<!--POI版本--> <!--POI版本-->
<poi.version>5.2.5</poi.version> <poi.version>5.2.5</poi.version>
<!--yaml文件读取-->
<snakeyaml.version>2.3</snakeyaml.version>
</properties> </properties>
</project> </project>
Loading…
Cancel
Save