專案案例中使用的環境spring-3.1.x+quartz 2.1.7, 最開始因為是單機配置,非常容易,分分鐘搞定,並正常。後面因為專案是集群部分,需要改造為最容易的db鎖方式集群quartz。要下班了,弄完並驗證,沒時間寫正常的配置過程,反正google一大堆,記錄下坑吧。
單機配置
--掠過
db方式集群配置
--掠過
坑:1、如果你配置的是單機模式(org.quartz.simpl.ramjobstore),quartz 的spring配置配置檔案千萬別加入:default-autowire="byname" ,因為在org.springframework.scheduling.quartz.schedule***ctorybean中有個datasource屬性,如果你的專案的datasource恰好名字是「datasource」,那告訴你,你完了,打死配置不出ramjobstore,永遠的:「
localdatasourcejobstore
」。原因:
schedule***ctorybean源**:
if (this.datasource != null)
所以你不配置資料庫方式,他也自動給你資料庫方式。
2、資料庫村建立(
jobstoretx或jobstorecmt
)方式,配置的
cronexpression表示式無法更新,第一次配置執行後,就一直儲存到資料庫中,fk,你怎麼修改配置檔案,都不更新。查了下google,有人用外掛程式配置定時更新(難道寫個程式修改資料庫!!?暈倒)。我沒有整了,反正配置好一般不變更。有高人知道好方案的給普及下,感謝!~
Quartz Spring 定時任務
專案結構 myjob就是我們要定時執行的任務 定時執行的任務 author hulujie public class myjob servlet context.xml配置 web.xml配置 org.springframework.web.context.contextloaderlistener...
Quartz Spring 定時任務應用
在實際的專案應用中常遇到定時執行某個任務,比如定時重新整理商品的狀態,定時更新token等等,定時任務在系統中的應用恨頻繁下面就簡單講解一下定時任務框架quartz 和 spring的整合。public class testtask execute false 0 55 2 28 配置完整格式為 秒...
定時任務元件Quartz Spring
org.quartz schedulergroupid quartzartifactid 2.2.3version dependency org.quartz schedulergroupid quartz jobsartifactid 2.2.1version dependency org.spr...