加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 在Spring中列出已解析的属性

发布时间:2020-12-15 02:33:25 所属栏目:Java 来源:网络整理
导读:我的 spring xml文件中有多个属性文件源,它们有不同的顺序值,有些是可选的. application.properties – 在类路径中,保存默认(回退)属性(最低优先级) [HOSTNAME] .properties – 在类路径中,包含特定于该主机名的属性(更高优先级) 在jndi中按值加载的属性文件
我的 spring xml文件中有多个属性文件源,它们有不同的顺序值,有些是可选的.

> application.properties – 在类路径中,保存默认(回退)属性(最低优先级)
> [HOSTNAME] .properties – 在类路径中,包含特定于该主机名的属性(更高优先级)
>在jndi中按值加载的属性文件 – 在via jndi中指定的位置,最高优先级.

换句话说,我可以使用.properties中的属性覆盖application.properties中设置的默认属性,并依次通过jndi查找其位置的属性文件覆盖这些值.

然而,我希望有一些方法让spring给出我所有属性的已解析值列表.谁知道我怎么做到这一点?

我很容易获得特定属性的值,但实际需要的是所有已解析属性的列表.

解决方法

我有两个建议:

>您可以使用方法processProperties覆盖PropertyPlaceholderConfigurer类,以填充所有已解析的属性.一个例子是here.>由于PropertyPlaceholderConfigurer实现了Spring的Ordered接口,因此您可以拥有多个属性占位符;然后,按照应用程序中应该的顺序为他们分配订单.最后,在已经扩展了类之后,您将可以按应加载的顺序访问所有已解析的属性.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读