Java定时任务调度工具
tags: 定時任務調度, title: Java定時任務調度工具
為什么要使用定時任務調度工具?
在最近的開發中,想開發一個“個人備忘錄”的功能,實際上就是用戶在指定某個時間點后,就在那個時間點發送郵件提醒用戶去做xxx事。
既然是這樣的一個功能,我就想到了定時任務調度...
之前跟著視頻做的項目也用到了定時任務調度工具:Quartz。當時記錄的博文在這:zhongfucheng.bitcron.com/post/javaee…
顯然的,只是簡單的使用了一下Quartz,并不能完成我所說的功能。后來我又記得在慕課網上有相關的Quartz教程。
于是我就去學習了一番,視頻教程:www.imooc.com/learn/841和www.imooc.com/learn/846
學習記錄
把慕課網的視頻也都看完了,現在做一個學習的記錄....
Timer
首先,得知道:為什么有JDK的Timer定時任務調度工具,還需要用到Quartz??
- Timer僅有一個線程來進行調度我們的任務,對于并發性而言,它是無法處理的!
- 如果使用Timer時拋出了異常,那么我們設置的任務將全部作廢
當然了, 如果僅僅是簡單使用任務調度工具、并沒有什么并發性的話,那么Timer是可以完成任務的。
在視頻中還介紹了Timer的一些API說明:
- schedule和scheduleAtFirstRate的對比:
可以總結出:scheduleAtFirstRate是有一定的并發性而言的(相對來說)
Quartz
Quartz的三大要素:
- 任務
- 觸發器
- 調度器
針對三大要素相關API說明:
任務:需要做怎么樣的事情
- 可以通過Map來傳遞所需要的參數!
Trigger:該任務何時被觸發
- 簡單的觸發器
- 復雜的觸發器
Schedule:
如果對Cron表達式不是特別清楚,還可以在網上生成!
Quartz與Sprping整合:
Spirng環境下使用Quartz時讀取的配置文件:
源碼:img.mukewang.com/down/5950ca…
如果您覺得這篇文章幫助到了您,可以給作者一點鼓勵
總結
以上是生活随笔為你收集整理的Java定时任务调度工具的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 学习编程可以参考哪些网站?
- 下一篇: 移动商城第五篇【查看、删除、编辑品牌】