Spring3.0定时任务 (二) 多个任务和执行时间间隔配置


承接上一篇文章(Spring3.0定时任务的基本操作 简单示例):

二、spring定时任务 : 多个任务和执行时间间隔配置

1、多个任务的使用:

第一步:写好执行定时任务的类和方法(多个,参考上一篇文章)

第二步:配置配置文件:(参考上一篇文章  )

<bean name="quartzScheduler" class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> 
       
        <!--必须,QuartzScheduler 延时启动,应用启动后 QuartzScheduler 再启动--> 
        <property name="startupDelay" value="60"/>         
        <!-- 普通触发器 :触发器列表,(可以配置多个任务)--> 
        <property name="triggers"> 
            <list>                 
                <ref local="testTrigger"/>
    <ref local="testTrigger1"/>  
                <ref local="testTrigger2"/>
    </list>
   </property>
  </bean>
 <!-- 配置执行定时任务的类和方法0 -->
 <bean id="testDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
  <property name="targetObject">
   <bean class="com.test.Test"></bean>
  </property>
  <property name="targetMethod">
   <value>test</value>
  </property>
 </bean>
 <!-- 配置触发器0 -->
 <bean id="testTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
  <property name="jobDetail">
   <ref bean="testDetail"/> <!-- 触发器触发的 执行定时任务的bean -->
  </property>
  <property name="cronExpression">
   <!-- 每天23时 --> <!-- 定时任务执行的间隔 -->
   <value>0 0 23 * * ?</value>
  </property>
 </bean>
 
 <!-- 配置执行定时任务的类和方法 1--> 
    <bean id="testDetail1"   
        class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">   
        <property name="targetObject">   
            <bean class="com.test.Test1"></bean> 
        </property>   
        <property name="targetMethod">   
            <value>test1</value>   
        </property>   
    </bean> 

<!-- 配置触发器1 -->   
    <bean id="testTrigger1"   
        class="org.springframework.scheduling.quartz.CronTriggerBean">   
        <property name="jobDetail">   
            <ref bean="testDetail1"/> <!-- 触发器触发的 执行定时任务的bean -->   
        </property>   
        <property name="cronExpression">   
            <!-- 每天23时  -->  <!-- 定时任务执行的间隔 --> 
            <value>0 0 23 * * ?</value> 
        </property>   
    </bean> 
<!-- 配置执行定时任务的类和方法2 --> 
    <bean id="testDetail2"   
        class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">   
        <property name="targetObject">   
            <bean class="com.test.Test2"></bean> 
        </property>   
        <property name="targetMethod">   
            <value>test2</value>   
        </property>   
    </bean> 

<!-- 配置触发器 2-->   
    <bean id="testTrigger2"   
        class="org.springframework.scheduling.quartz.CronTriggerBean">   
        <property name="jobDetail">   
            <ref bean="testDetail2"/> <!-- 触发器触发的 执行定时任务的bean -->   
        </property>   
        <property name="cronExpression">   
            <!-- 每天23时  -->  <!-- 定时任务执行的间隔 --> 
            <value>0 0 23 * * ?</value> 
        </property>   
    </bean>

  • 1
  • 2
  • 下一页

相关内容