歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

Spring3.0定時任務 (二) 多個任務和執行時間間隔配置

承接上一篇文章(Spring3.0定時任務的基本操作 簡單示例):

二、spring定時任務 : 多個任務和執行時間間隔配置

1、多個任務的使用:

第一步:寫好執行定時任務的類和方法(多個,參考上一篇文章)

第二步:配置配置文件:(參考上一篇文章 http://www.linuxidc.com/Linux/2012-12/76483.htm )

<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>

Copyright © Linux教程網 All Rights Reserved