我试图找出如何调整“destroyWorldTask”bean的“period”属性,该bean在我的bean列表中定义如下。这可能吗?这样做的正确方法是什么?
<bean id="mytimerfactory"
class="org.springframework.scheduling.timer.TimerFactoryBean">
<property name="daemon" value="true"/>
<property name="myTimerTasks">
<list>
<bean class="org.springframework.scheduling.timer.ScheduledTimerTask" id="destroyWorldTask">
<property name="delay" value="100"/>
<property name="period" value="10000/>
<property name="runnable">
<bean class="com.scene7.is.util.SafeRunnable">
<constructor-arg ref="destroyWorld"/>
</bean>
</property>
</bean>
</list>
</property>
</bean>
答案 0 :(得分:1)
有两种可能的答案:
1.如果要在程序中的某处设置“period”属性,则无需在上下文配置中进行设置。 (我认为不适合你,因为你使用的是弹簧级,而不是你的。)
2.从 org.springframework.scheduling.timer.ScheduledTimerTask 扩展并制作您的课程版本,例如:
public MyTimeScheduledTimerTast extends ScheduledTimerTask{
//...
}
并在程序中设置该属性。 (现在它在你手中)
然后更新您的上下文配置,如下所示:
<bean id="mytimerfactory" class="org.springframework.scheduling.timer.TimerFactoryBean">
<property name="daemon" value="true"/>
<property name="myTimerTasks">
<list>
<bean class="myPackage.MyScheduledTimerTask" id="destroyWorldTask">
<!-- Set those properties that are not set in your program -->
</bean>
</list>
</property>
</bean>