Pre Merge pull request !272 from Gszekt/master

This commit is contained in:
Gszekt 2021-03-13 16:03:41 +08:00 committed by Gitee
commit 13dc1a2cce
2 changed files with 28 additions and 2 deletions

View File

@ -8,7 +8,7 @@ spring:
master:
url: jdbc:mysql://localhost:3306/ry?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
username: root
password: password
password: # 使用 com.alibaba.druid.filter.config.ConfigTools 加密后生成的 password
# 从库数据源
slave:
# 从数据源开关/默认关闭
@ -55,3 +55,7 @@ spring:
wall:
config:
multi-statement-allow: true
filters: config
connect-properties:
config.decrypt: true
config.decrypt.key: # 使用 com.alibaba.druid.filter.config.ConfigTools 加密后生成的 publicKey

View File

@ -4,6 +4,8 @@ import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Configuration;
import com.alibaba.druid.pool.DruidDataSource;
import java.util.Properties;
/**
* druid 配置属性
*
@ -45,6 +47,15 @@ public class DruidProperties
@Value("${spring.datasource.druid.testOnReturn}")
private boolean testOnReturn;
@Value("${spring.datasource.druid.filters}")
private String filters;
@Value("${spring.datasource.druid.connect-properties.config.decrypt}")
private String decryptEnabled;
@Value("${spring.datasource.druid.connect-properties.config.decrypt.key}")
private String decryptKey;
public DruidDataSource dataSource(DruidDataSource datasource)
{
/** 配置初始化大小、最小、最大 */
@ -72,6 +83,17 @@ public class DruidProperties
datasource.setTestOnBorrow(testOnBorrow);
/** 归还连接时执行validationQuery检测连接是否有效做了这个配置会降低性能。 */
datasource.setTestOnReturn(testOnReturn);
try {
/* 启用数据库密码解密 */
datasource.setFilters(filters);
Properties properties = new Properties();
properties.put("config.decrypt", decryptEnabled);
properties.put("config.decrypt.key", decryptKey);
datasource.setConnectProperties(properties);
} catch (Exception exception) {
exception.printStackTrace();
}
return datasource;
}
}