1、工程的pom.xml中加入druid starter:
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.1.10</version>
</dependency>
2、工程的application.yml中加入相关配置:
public-key: MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAIu+KSyVgrHeq7VRhuP2FBR4cDkYK8q8zc/uglpSOxCet0zwatmLxQXGWbAR6DoHop5vqGomyKAukLQk0rk4SskCAwEAAQ==
spring:
datasource:
type: com.alibaba.druid.pool.DruidDataSource
druid:
url: jdbc:postgresql://10.0.0.236:5432/jia_test
username: postgres
password: Q9ZvOSYpratpg1w8MpaRzFBsu6MrTasUICEgjsuUTEQ2TMcqlrwHoF5992jVm1Y8ZtSe3UsbnMhVUKNo8wxwuw==
driver-class-name: org.postgresql.Driver
initial-size: 10
max-active: 100
min-idle: 10
max-wait: 60000
pool-prepared-statements: true
max-pool-prepared-statement-per-connection-size: 20
time-between-eviction-runs-millis: 60000
min-evictable-idle-time-millis: 300000
#Oracle需要打开注释
#validation-query: SELECT 1 FROM DUAL
test-while-idle: true
test-on-borrow: false
test-on-return: false
stat-view-servlet:
enabled: true
url-pattern: /druid/*
login-username: admin
login-password: admin
filters: stat,wall
filter:
stat:
log-slow-sql: true
slow-sql-millis: 1000
merge-sql: false
wall:
config:
multi-statement-allow: true
connection-properties: config.decrypt=true;config.decrypt.key=${public-key};
jiongbo:
token: 8483b195-d1d7-4478-a010-70c2d17b58a4
task:
enable: true
swagger:
enable: true
以上两部就完成了springboot 整合druid,不需要其他的任何配偶类。下面就是用alibaba druid官方提供的工具对铭文密码进行加密或者任何其他第三方的加密方法都行。记得保留公钥私钥匙
3、对数据库密码进行加密
命令行下进入druid-1.1.10.jar所在目录,执行下面的命令生成:公钥(public-key)、私钥(private-key)和加密后的密码(password)
> pwd
> E:\repository\com\alibaba\druid\1.1.10
> java -cp druid-1.1.10.jar com.alibaba.druid.filter.config.ConfigTools 你的密码
将上面生成的password 放到application.yml的【your encrypted Password】位置
将上面生成的public-key 放到application.yml的【your public key】位置
4、特别提醒加密相关的三点配置:
配置启用ConfigFilter:filters: config
是否需要解密:config.decrypt=true
指定公钥:config.decrypt.key=${public-key}
以上三点配置中第一个在:spring.datasource.druid.filters中指定,后两个在spring.datasource.druid.connectionProperties中指定。千万不要放错地了。