我是春天(3.1)的新手并且完全被这个问题所困扰。 我试图使用在两个属性文件中定义的 PropertyPlaceholderConfigurer 来访问属性值“schdestination”(一个覆盖另一个)。
我想使用@Value在类中设置一个字段,而我却无法在不使用其他bean的情况下找到方法。这是我的spring XML代码段
<bean id="placeholderProperties" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list>
<value>/WEB-INF/abc.properties</value>
<value>/WEB-INF/loc.abc.properties</value>
</list>
</property>
<property name="ignoreUnresolvablePlaceholders" value="true" />
<property name="order" value="1" />
</bean>
有什么线索吗?
答案 0 :(得分:1)
@Value("${schdestination}")
private String destination;
应该有用。
答案 1 :(得分:0)
包含@Value
的类需要使用@Component
进行批注,并且您需要在applicationContext.xml中使用<context:component-scan/>
。
答案 2 :(得分:0)
您是否在自己的网络应用中使用它?那是我的情况。我正在从应用程序上下文加载属性文件,并且在某种程度上它们在Web应用程序包中是不可见的 - 控制器是精确的。我不得不在servlet-context.xml中重新声明它们,然后它们是可见的并且工作得很好。我真的希望有人可以解释可能发生的事情,或者是否真的是一个需要在Spring修复的问题。