如何从我的类方法启动和停止石英调度程序?春季调度

时间:2011-01-04 09:12:20

标签: java spring spring-mvc scheduling quartz-scheduler

我是春天新手。我实现了每隔10秒调用一次方法的调度程序。 看起来像,

<bean id="bidApprovalJob"
class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
      <property name="targetObject" ref="bidApprovalOperations" /> 
      <property name="targetMethod" value="checkExpiredAuctions" /> 
      </bean>
     <!--  Simple Trigger --> 
     <bean id="simpleTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerBean">
      <property name="jobDetail" ref="bidApprovalJob" /> 
      <property name="repeatInterval" value="10000" /> 
     <!--  5second delay mentioned in milliseconds --> 
      <property name="startDelay" value="5000" /> 
      </bean>
     <bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
     <property name="jobDetails">
     <list>
      <ref bean="bidApprovalJob" /> 
      </list>
      </property>
     <property name="triggers">
     <list>
      <ref bean="simpleTrigger" /> 
      </list>
      </property>
      </bean>

但是,这个计划一直在运行。我希望在用户单击按钮时在运行时启动调度程序,并在一定时间后停止它。

我可以从类方法启动调度吗?我可以在类中创建调度实例,然后启动和停止吗?

提前谢谢。

1 个答案:

答案 0 :(得分:3)

由SchedulerFactoryBean创建的Scheduler具有standby()和start()方法,您可以使用这些方法来控制触发器的触发。