改造代码如下:
package com.xxl.job.admin.core.util;
import bsp.encrypt.EncryptUtil;
import bsp.encrypt.ParamType;
import com.zaxxer.hikari.HikariDataSource;
import java.sql.Connection;
import java.sql.SQLException;
import java.sql.SQLFeatureNotSupportedException;
public class EncryptHikariDataSource extends HikariDataSource {
@Override
public String getPassword() {
System.out.println("aaaaaaaaaaaaaa=="+super.getPassword());
String pp = null;
try {
pp = EncryptUtil.decrypt(ParamType.STRING, "公钥", ParamType.STRING,
"私钥", ParamType.STRING, super.getPassword());
System.out.println("bbbbbbbbbbbbbbb=="+pp);
} catch (Exception e) {
e.printStackTrace();
}
return pp;
}
}
springboot四种数据源:
org.apache.tomcat.jdbc.pool.DataSource
com.zaxxer.hikari.HikariDataSource
org.apache.commons.dbcp.BasicDataSource
org.apache.commons.dbcp2.BasicDataSource
如果需要对数据库密码进行加密解密,继承上述类,找到getpassword方法并重写;
配置文件指定数据源。