项目框架:spring
我们在开发应用时,需要连接数据库,一般把数据库信息放在一个属性配置文件中,比如jdbc.properties,具体的内容
jdbc.properties配置文件
jdbc.url=jdbc:mysql://127.0.0.1:3306/test
jdbc.username=root
jdbc.password=123456
里面用明文的方式存储着数据库的敏感信息用户名username和密码password,这是不好的行为,容易产生安全问题。那我们如何实现加密存储呢?
1、首先需要找一个对称加密工具进行加密解密:加密工具类
2、把加密后的数据放入到jdbc.properties配置文件中
jdbc.url=jdbc:mysql://127.0.0.1:3306/test
jdbc.username=73A949DD29845907
jdbc.password=F73556ABB1FB8849D72960B9CC30FF51
3、自定义PropertyPlaceholderConfigurer类,在读取properties配置文件的时候进行解密
// 配置参数处理
public class DBPropertyPlaceholderConfigurer extends PropertyPlaceholderConfigurer {
private String[] encryptedProperties; // 需要解密的属key
private Pro