首先配置文件中
<!-- 加密时候使用 -->
<bean id="propertyConfig" class="sunwin.yog.dao.DecodePropertyConfigurer">
<property name="locations">
<list>
<value>classpath:config.properties</value>
</list>
</property>
</bean>
实现自定义DecodePropertyConfigurer类
/**
* 扩展 配置文件数据库用户名,密码解密
*/
public class DecodePropertyConfigurer extends PropertyPlaceholderConfigurer {
private Logger log = Logger.getLogger(DecodePropertyConfigurer.class);
@Override
protected void processProperties(ConfigurableListableBeanFactory beanFactory, Properties props){
try{
String password = props.getProperty("jdbc.password");
//解密jdbc.password属性值,并重新设置
props.setProperty("jdbc.password", EncodeUtil.decode(password));
super.processProperties(beanFactory, props);
}catch (Exception e){
log.error(e+"\nDecrypt Error");
e.printStackTrace();
}
}
}