我有一个Spring启动应用程序,我不想注入属性。在我们之前的项目中,我们在PropertyPlaceholderConfigurer
中定义了context.xml
,以便立即从所有相关模块加载属性文件:
<bean id="propertyPlaceholderConfigurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="ignoreResourceNotFound" value="true" />
<property name="systemPropertiesModeName" value="SYSTEM_PROPERTIES_MODE_OVERRIDE" />
<property name="locations">
<list>
<value>classpath:test.properties</value>
<value>classpath*:/META-INF/*.properties</value>
</list>
</property>
</bean>
现在我正在寻找Java配置风格的有价值的替代方案。我尝试按如下方式注释我的配置类:
@PropertySources(value = { @PropertySource("classpath:application.properties"),
@PropertySource("classpath*:/META-INF/*.properties") })
但@PropertySource
注释不喜欢通配符(这有意义,因为它负责获取单个资源)。
任何想法,提示,解决方案?
答案 0 :(得分:-1)
雅,这很尴尬,因为PropertySource
不支持通配符。上一个问题提供了一个合理的解决方案,我已成功使用它。