Quartz 設置一個半小時任務實現


該文章屬於本人原創,轉載請注明出處。
 
spring + Quartz 設置定時任務時要求沒一個半小時執行一次
 
設置兩個相同的定時任務
 
第一個從整點開始每三小時執行一次
             <!--每三小時執行一次任務,從整點開始-->
        < property name = "cronExpression" value = "0 0 0/3 * * ?" ></ property >
 
 
第二個從一個半小時后開始每三小時執行一次
             <!--每三小時執行一次任務, 從一個半小時后開始 -->
        < property name = "cronExpression" value = "0 30 1/3 * * ?" ></ property >
spring核心代碼示例:
 
<!--獲取demoTask定時任務start -->
    <bean id ="demoTask"                  class="com.bdx.itpl.wcpay.quartz.task.OrdinaryAccessTokenAndJsApiTicketTask" />
    <bean id ="demoMethod" class= "org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean" >
        <property name ="targetObject">
            <ref bean ="demoTask"/>
        </property >
        <property name ="targetMethod">
            <value >execute </value ><!-- 要執行的方法名稱 -->
        </property >
    </bean >
    <bean id ="demoBean" class= "org.springframework.scheduling.quartz.CronTriggerFactoryBean" >
        <property name ="jobDetail" ref= "demoMethod" ></property >
        <!--每三小時執行一次任務,從整點開始-->
        <property name ="cronExpression" value="0 0 0/3 * * ?"></property>
    </bean >  
    <bean id ="demoBean2" class= "org.springframework.scheduling.quartz.CronTriggerFactoryBean" >
        <property name ="jobDetail" ref= "demoMethod" ></property >
        <!--每三小時執行一次任務,從一個半小時后開始 -->
        <property name ="cronExpression" value="0 30 1/3 * * ?"></property>
    </bean >  
    <!--獲取OrdinaryAccessTokenAndJsApiTicketTask定時任務end-->
  
    <!-- ======================== 調度工廠 ======================== -->
    <bean id ="SpringJobSchedulerFactoryBean" class= "org.springframework.scheduling.quartz.SchedulerFactoryBean" >
        <property name ="triggers">
            <list >

                <ref bean= "demoBean" />
                <ref bean= "demoBean2" />
               
            </list >
        </property >

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2026 CODEPRJ.COM