首页 > 开发 > Java > 正文

Spring加载加密的配置文件详解

2024-07-13 10:09:45
字体:
来源:转载
供稿:网友

本文实例为大家分享了Spring加载加密的配置文件,供大家参考,具体内容如下

一、继承并实现自己的属性文件配置器类

/** * 带加密的Spring属性配置文件扩展类 * 加密方式:AES * @author simon * */public class EncryptPropertyPlaceholderConfigurer extends PropertyPlaceholderConfigurer { //指定需要加密的属性 private String[] propertyNames = {"db.password"}; /**  * 解密指定propertyName的属性值  * @param propertyName  * @param propertyValue  * @return  */ @Override protected String convertProperty(String propertyName, String propertyValue) {  //过滤出需要解密的属性  for (String p : propertyNames) {   if (p.equalsIgnoreCase(propertyName)) {    try {     //返回AES解密后的字符串     return new String(SymmetricCryptoUtil.decryptAESWithDefaultKey(EncodeUtil.decodeBase64(propertyValue)));    } catch (Exception e) {     e.printStackTrace();    }   }  }  return super.convertProperty(propertyName, propertyValue); }}

二、Spring中配置以自定义的属性文件配置器类来加载加密后的配置文件

<!-- 加载加密后的配置文件 --><bean class="com.bounter.mybatis.extension.EncryptPropertyPlaceholderConfigurer"> <property name="locations"> <list>  <value>classpath:db.properties</value> </list> </property></bean>

三、将配置文件中的特殊属性用相同的算法和密钥加密

db.driver=db.url=db.username=root#AES encrypt,Base64 encodedb.password=jFYmt2f57RHhzItYDhWiSA==

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持VeVb武林网。


注:相关教程知识阅读请移步到JAVA教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表