我在Spring中有一个调度过程,每5分钟运行一次。更有趣的升级是切换选择此计划流程或其他Web服务。当然我可以使用属性设置和java来完成这项工作,但是在应用程序上下文中定义了一些我需要处理的bean
<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<!-- always keep A,B,C,E -->
<ref bean="triggerA" />
<ref bean="triggerB" />
<ref bean="triggerC" />
<!-- some sort of condition to enable this ref or not -->
<ref bean="triggerD_I_want_an_option_to_disable_ahhhhhhhhhh" enabled="false"/>
<ref bean="triggerE" />
</list>
</property>
</bean>
我知道对于Spring bean集合进行这样的切换可能是一种幻想,但请告诉我是否有任何方法可以通过属性文件简单地打开/关闭bean,例如
<bean enable="${thisBeanEabled}" id="..." class="com.Chrstimas.all.gifts.are.Free" />
答案 0 :(得分:0)
您只需要让triggerD_I_want_an_option_to_disable_ahhhhhhhhhh
implments SmartLifeCycle添加一个布尔字段,该字段与属性一起自动装配,此字段的值将由isAutoStartup()