Spring4+Springmvc+quartz實現多執行緒動態定時排程

weixin_34146805發表於2017-11-08

scheduler定時排程系統是大多行業專案都需要的,傳統的spring-job模式,個人感覺已經out了,因為存在很多的問題,特別是定時排程的追加、修改、刪除等,需要修改xml,xml的配置生效無非是熱部署灰度釋出方案或者直接停止、重啟伺服器,完全不能做到自動啟動、修復方式。

提醒:可以對應用進行叢集部署,在對定時排程配置時可以使用叢集方式或者單邊配置應用方式,今天講解的是使用spring4+scheduler實現定時排程,閒話少說,直接把步驟記錄下來:

1. 在專案的pom.xml檔案中引入quartz的jar包,如下:

Java程式碼


Spring4+Springmvc+quartz實現多執行緒動態定時排程

lt;dependency>

org.quartz-scheduler

quartz

1.8.5

lt;/dependency>

2. 定義quartz的配置檔案spring-context-quartz.xml:

Java程式碼


Spring4+Springmvc+quartz實現多執行緒動態定時排程

xmlns:context="http://www.springframework.org/schema/context"xsi:schemaLocation="

http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd

http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd"

default-lazy-init="false">

3. 在專案的web.xml檔案中引入spring-context-quartz.xml配置檔案

Java程式碼


Spring4+Springmvc+quartz實現多執行緒動態定時排程

4. 定義job實體物件

Java程式碼


Spring4+Springmvc+quartz實現多執行緒動態定時排程
Spring4+Springmvc+quartz實現多執行緒動態定時排程
Spring4+Springmvc+quartz實現多執行緒動態定時排程

5. 編寫quartz的jobServvice類:

Java程式碼


Spring4+Springmvc+quartz實現多執行緒動態定時排程
Spring4+Springmvc+quartz實現多執行緒動態定時排程
Spring4+Springmvc+quartz實現多執行緒動態定時排程
Spring4+Springmvc+quartz實現多執行緒動態定時排程
Spring4+Springmvc+quartz實現多執行緒動態定時排程

6. 編寫相關job的Controller、dao、dao.xml我這邊就不寫了,其實就是對資料的增刪改查操作

7. 啟動專案驗證quartz是否成功:

專案啟動個控制檯:


Spring4+Springmvc+quartz實現多執行緒動態定時排程


Spring4+Springmvc+quartz實現多執行緒動態定時排程


Spring4+Springmvc+quartz實現多執行緒動態定時排程

願意瞭解框架技術或者原始碼的朋友直接求求交流分享技術:2042849237

分散式的一些解決方案,有願意瞭解的朋友可以找我們團隊探討

更多詳細原始碼參考來源


相關文章