Druid数据库连接池 实现数据库账号密码加密

jar包版本:druid-1.0.15.jar

1. 加密,用以下命令将用户名和密码加密

cmd命令行执行

java-cpdruid-1.0.15.jarcom.alibaba.druid.filter.config.ConfigTools加密串

得到密文

2.用户名解密:

packagecom.heli.core.user.common;importcom.alibaba.druid.filter.config.ConfigTools;importcom.alibaba.druid.pool.DruidDataSource;/**

* 用来解密配置中的密文(重点配置,在这里扩展用户名的解密)

* setUsername(name) 方法对应xml中的一个property属性,password默认加密不需要重写,

* 还可以加密url 重写setUrl(url)

*/@SuppressWarnings("all")publicclassDecryptDruidSourceextendsDruidDataSource{@OverridepublicvoidsetUsername(String username){try{        username = ConfigTools.decrypt(username);    }catch(Exception e) {        e.printStackTrace();    }super.setUsername(username);        }}

3.spring-database.xml中数据库连接的配置

4.数据库配置文件:

#mysqlusername=f0PSl0Lzxh6CxzuFIdEg+wVx045fSE2VtUP45G9HH2cjVQnmGGgcK5CLzNUJoR6tGwRO44h74OxrBWuDzWC8jg==password=f0PSl0Lzxh6CxzuFIdEg+wVx045fSE2VtUP45G9HH2cjVQnmGGgcK5CLzNUJoR6tGwRO44h74OxrBWuDzWC8jg==url=jdbc:mysql://192.168.1.194/user?characterEncoding=utf-8driver=com.mysql.jdbc.DriverinitialSize=5minIdle=5maxActive=20maxWait=60000timeBetweenEvictionRunsMillis=60000minEvictableIdleTimeMillis=30000validationQuery=SELECT1testWhileIdle=truetestOnBorrow=truetestOnReturn=truefilters=stat,log4jremoveAbandoned=trueremoveAbandonedTimeout=1200logAbandoned=true

你可能感兴趣的:(Druid数据库连接池 实现数据库账号密码加密)