spring动态管理quartz的方法
现在系统里面的quartz是通过spring配置手动调用的,具体配置如下所示; 现在我需要做一个控制界面,手动对worker进行管理,比如手动启动某个worker,或者停止某个worker(不再继续调度)。求大神指导SchedulerFactoryBean如何对注册的worker进行控制?
<!-- 要调用的工作类 --> <bean id="hotModuleJob" class="com.mycom.worker.HotModuleWorkerService"></bean> <!-- 定义调用对象和调用对象的方法 --> <bean id="hotModuleTask" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"> <!-- 调用的类 --> <property name="targetObject"> <ref bean="hotModuleJob"/> </property> <!-- 调用类中的方法 --> <property name="targetMethod"> <value>startTask</value> </property> </bean> <!-- 定义触发时间 --> <bean id="doHotModuleTime" class="org.springframework.scheduling.quartz.CronTriggerBean"> <property name="jobDetail"> <ref bean="hotModuleTask"/> </property> <!-- cron表达式 --> <property name="cronExpression"> <value>0/30 * * * * ?</value> </property> </bean> <!-- 总管理类 如果将lazy-init='false'那么容器启动就会执行调度程序 --> SchedulerFactoryBean <bean id="schedulerFactoryBean" lazy-init="false" autowire="no" class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> <property name="triggers"> <list> <ref bean="doHotModuleTime"/> </list> </property> <property name="startupDelay" value="180"></property> <!--系统启动后, 延迟3分钟启动调度 --> </bean>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
核心代码:
核心代码: