开发者社区> 问答> 正文

基于JavaConfig模式的Spring配置下,怎么对配置文件中的加密属性进行解密

基于XML配置Spring,可以重写PropertyPlaceholderConfigurer类的convertProperty()方法来实现配置文件中的配置加密解密。如果使用JavaConfig来配置Spring,@PropertySource这个注解把配置文件载入后使用Environment来获取配置没办法进行解密。我猜想可能也是需要重写某个类的方法来实现自定义加解密逻辑。但是我没有找到,Environment的类关系太复杂,新人实在无力。求教有经验的前辈,这个问题怎么解决。

展开
收起
a123456678 2016-03-18 15:07:33 2797 0
1 条回答
写回答
取消 提交回答
    1. 重写AnnotationConfigWebApplicationContext类中的protected ConfigurableEnvironment createEnvironment()方法,同时重写AbstractAnnotationConfigDispatcherServletInitializer类中的createRootApplicationContext()方法
    2. 新建一个类,注入Environment,获取属性的时候就从新建的类的方法中获取,获取的操作里添加解密的逻辑

    第二种方法更好,因为修改的东西更少,且不侵入Spring

    2019-07-17 19:06:47
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
云栖社区特邀专家徐雷Java Spring Boot开发实战系列课程(第20讲):经典面试题与阿里等名企内部招聘求职面试技巧 立即下载
微服务架构模式与原理Spring Cloud开发实战 立即下载
阿里特邀专家徐雷Java Spring Boot开发实战系列课程(第18讲):制作Java Docker镜像与推送到DockerHub和阿里云Docker仓库 立即下载