Quartz的XML配置


<!-- Timer schedule  此段代碼是Spring整合Quartz的配置文件 -->

    <!--要調度的對象 稱之為 任務器或者作業器,或作業任務,是按照一定規律運行的定時任務
  解釋:調用QtzJob這個POJO類中的execute方法
將com.wfg.QtzJob注冊給jobBean,jobBean就是作業任務
-->
    <bean id="jobBean" class="com.wfg.QtzJob" />
    <bean id="jobDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
        <property name="targetObject" ref="jobBean" />
        <property name="targetMethod" value="execute" />
        <!--將並發設置為false -->
        <property name="concurrent" value="false" />
    </bean>

    <bean id="trigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">

<!--
<bean id="trigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
Quartz 1.7.3 與Spring 4.0.6 可以使用 CronTriggerBean Quartz 2.2.3 與Spring 4.2.2 須使用CronTriggerFactoryBean
作業觸發器,就是直接觸發作業任務的控制器,一個觸發器只能觸發一個任務,一個任務可以被多個觸發器觸發
--> <property name="jobDetail" ref="jobDetail" /> <!-- cron表達式 --> <property name="cronExpression" value="* 0/5 * * * ?" /> </bean> <!-- 總管理類如果將lazy-init='false'那么容器啟動就會執行調度程序
    作業調度器 SchedulerFactoryBean 管理和配置觸發器
--> <bean id="startQuertz" class="org.springframework.scheduling.quartz.SchedulerFactoryBean" lazy-init="false"> <property name="triggers"> <list> <!--作業調度器,list下可加入其他的調度器 --> <ref bean="trigger" /> </list> </property> </bean>

<property name="concurrent" value="false" />
false:任務執行一次需要的時間超過了repeatInterval,下次執行會等這次執行玩再執行 --- 串行設置
true:任務執行一次超過repeatInterval時,會新開啟一個線程,進入第二次執行 ---並行設置

 


免責聲明!

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



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