我想使用带有弹簧值注释的占位符,我无法找到一些示例。有人可以指出我与示例的链接。 e.g。
属性文件
service.scheduled=You have successfully scheduled service {0}.
Java Spring代码:
@Value("${service.scheduled}")
private String scheduleNotification
我希望在属性占位符“{0}”中进行动态占位符替换。我没有读取属性文件的问题。我不知道,这可能与这个spring值注释注入实现有关。
答案 0 :(得分:0)
您应该在root-context.xml
中配置属性文件(或者调用任何Spring配置)。
这定义了一个bean,您可以使用@Value
注释从中读取属性值(您不必引用bean的名称,您可以正常使用该属性):
<bean id="DBProperties" class="org.springframework.beans.factory.config.PropertiesFactoryBean">
<property name="locations">
<list>
<value>classpath*:database.properties</value>
</list>
</property>
</bean>
此外,如果您使用Spring Context,以下内容也应该有效:
<context:property-placeholder location="classpath:database.properties"/>
这是一个肯定更简单,但是在这种情况下AFAIK你不能使用Spring配置文件(FIXME)中的属性值。