2011-11-02 70 views
1

配置:石英:每天运行一次任务,不按repeatInterval

<bean id="simpleTrigger" 
     class="org.springframework.scheduling.quartz.SimpleTriggerBean"> 

     <property name="jobDetail" ref="runMeJob" /> 
     <property name="repeatInterval" value="5000" /> 
     <property name="startDelay" value="1000" /> 

    </bean> 

    <!-- Cron Trigger --> 
    <bean id="cronTrigger" 
     class="org.springframework.scheduling.quartz.CronTriggerBean"> 

     <property name="jobDetail" ref="runMeJob" /> 
     <property name="cronExpression" value="0 45 16 ? * MON-FRI" /> 

    </bean> 

    <bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> 
     <property name="jobDetails"> 
      <list> 
      <ref bean="runMeJob" /> 
      </list> 
     </property> 

     <property name="triggers"> 
      <list> 
      <ref bean="simpleTrigger" /> 
      </list> 
     </property> 
    </bean> 

我需要在每个工作日一次16:45运行任务。
simpleTrigger警告如果我不使用repeatInterval,由于它不能为0,但我不需要它,因为需要我的任务每天执行一次。

回答

2

为什么你连都有 simpleTrigger?您的cronTrigger应该足以在每个工作日16:45运行任务。

<!-- Cron Trigger --> 
<bean id="cronTrigger" 
    class="org.springframework.scheduling.quartz.CronTriggerBean"> 

    <property name="jobDetail" ref="runMeJob" /> 
    <property name="cronExpression" value="0 45 16 ? * MON-FRI" /> 

</bean> 

<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> 
    <property name="jobDetails"> 
     <list> 
     <ref bean="runMeJob" /> 
     </list> 
    </property> 

    <property name="triggers"> 
     <list> 
     <ref bean="cronTrigger" /> <!-- use cronTrigger instead of simpleTrigger --> 
     </list> 
    </property> 
</bean> 
+0

StriplingWarrior,谢谢你来看,我是unattentive,但奇怪的,这种表达不仍然工作:0 45 16? * MON-FRI,这个表达方式正常:0/5 * * * *? – sergionni