我正在关注以下文章。
http://www.mkyong.com/spring/spring-quartz-scheduler-example/
一切正常。
<bean id="simpleTrigger"
class="org.springframework.scheduling.quartz.SimpleTriggerBean">
<property name="jobDetail" ref="runMeJob" />
<property name="repeatInterval" value="5000" />
<property name="startDelay" value="1000" />
</bean>
我创建了一个属性文件app.properties,其中包含
repeatInterval = 5000
startDelay = 1000
我想将这些数据加载到bean属性中。现在我必须将值硬编码到xml文件中。
我希望能够将属性文件中的数据加载到bean属性中。有可能吗?
编辑:
我有
<property name="repeatInterval" value="5000" />
我正在寻找的是一种方法
<property name="repeatInterval" value= "get 5000 from property file" />
答案 0 :(得分:3)
要查找类路径中的文件myPropertyFileName.properties
并将其加载到spring配置中,请创建以下bean:
<bean id="myPropertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="location" value="classpath:myPropertyFileName.properties"/>
<property name="placeholderPrefix" value="${props:"/>
</bean>
然后使用定义为
的属性名称repeatInterval=5000
像这样:
<property name="repeatInterval" value="${props:repeatInterval}"/>
答案 1 :(得分:0)
使用Spring propertyPlaceholderConfigurer
来实现此目的。 Follow this guide
答案 2 :(得分:0)
过去我遇到过类似的事情。我需要使用Spring加载一堆bean,但我希望它们是用户可编辑的bean文件。因此我不想将它们包含在罐子包装中。我所做的是在jar之外创建我的用户定义的bean文件,但是在一个已知的相对位置。我的打包bean定义文件引用了用户定义的bean文件中定义的bean,当我加载应用程序上下文时,我提供了两个文件(用户定义和打包)。
有点不正统,但有效。