我在spring中配置好一个定时任务,如何通过代码控制这个任务的暂停恢复
<bean name="taskJob" class="com.kingtop.platform.util.TaskJob" />
<bean id="methodInvokingJobDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject">
<ref bean="taskJob" />
</property>
<property name="group" value="job_work"/>
<property name="name" value="job_work_name"/>
<property name="targetMethod">
<value>execute</value>
</property>
<property name="concurrent">
<value>false</value>
</property>
</bean>
<!-- 配置触发器 -->
<!--这里不可以直接在属性jobDetail中引用taskJob,因为他要求的是一个jobDetail类型的对象,所以我们得通过MethodInvokingJobDetailFactoryBean来转一下-->
<!--每天的8点到21点每隔1分钟触发,具体说明见附录 -->
0 1/2 08-21 * * ?
</bean>
<bean lazy-init="false" autowire="no" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<!-- 添加触发器 -->
<property name="triggers">
<list>
<ref local="cronTrigger" />
</list>
</property>
</bean>
http://hawkfly.iteye.com/blog/841761
好办啊..quartz会定时的去执行你配置的代码。你只需改变这段代码。当你按暂停的时候这段代码执行的是空,按继续的时候执行的是你要执行的东西
默认是按继续的。这样你的代码一直在执行,但是当你按 暂停的时候执行的就是空。不就可以达到目的了。这么做的时候你需要一个参数来让你的控制器(暂停 继续) 和quartz执行的代码交互···定义个全局的变量flag ;control改变-->flag改变-->quartz执行的代码改变