如何获得PropertyPlaceHolderConfigurer中所有属性的列表?

时间:2015-09-30 20:01:23

标签: java spring

我有:

<bean id="applicationProperties" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
    <property name="locations">
        <list>
            <value>classpath:config/common.properties</value>
            <value>classpath:config/env/${env}/environment.properties</value>
        </list>
    </property>
    <property name="ignoreResourceNotFound" value="true" />
    <property name="nullValue" value="@null" />
</bean>

我想要做的是System.out.print当我在* .java文件中时可用的所有属性键/值对。

1 个答案:

答案 0 :(得分:0)

我有同样的问题。我想获得环境中的所有属性名称。我通过迭代各种PropertySource组件来解决它。不幸的是,一些PropertySource不公开属性名称。对于那些您必须知道属性名称并从属性名称访问值的人。

以下是我找到的各种PropertySource。 (您可以获取可枚举的属性名称,但我找不到其他人的方法。)

// EnumerablePropertySource
MapPropertySource
ServletContextPropertySource
PropertiesPropertySource
SystemEnvironmentPropertySource
PortletConfigPropertySource
PortletContextPropertySource
ServletConfigPropertySource
CommandLinePropertySource
JOptCommandLinePropertySource
SimpleCommandLinePropertySource
CompositePropertySource
PropertiesPropertySource
MockPropertySource
ResourcePropertySource

// Other
PropertySource$StubPropertySource
RandomValuePropertySource
MutablePropertySources