Quartz 之入门示例
前些天發(fā)現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。
環(huán)境:XP+Myeclipse6.5+JDK1.6?
quartz官網:http://www.quartz-scheduler.org/?
參考資料?
1 Quartz任務調度快速入門?
http://www.blogjava.net/baoyaer/articles/155645.html?
2 Quartz?
http://ttaale.iteye.com/blog/630202?
http://java-lyvee.iteye.com/blog/817110?
3 Quartz Job Scheduling Framework?
http://hi.baidu.com/recoder/blog/item/ec7642f1db2b68a7a40f52f3.html?
4 Quartz學習?
http://blog.csdn.net/bubei/article/details/2108778?
5 Quartz學習資料鏈接?
http://topmanopensource.iteye.com/blog/search?query=quartz?
特別說明:如無特別說明,所有有關quartz示例基于官方示例?
一 Quarta介紹?
1 Quartz是什么?
Quartz就是一個純 Java 實現的作業(yè)調度工具,相當于數據庫中的 Job、Windows 的計劃任務、Unix/Linux 下的 Cron,但 Quartz 可以把排程控制的更精細.?
2 Quartz 框架的發(fā)展歷程?
Quartz項目是由James House創(chuàng)立的,在1998年就有該框架最初的構思,包括作業(yè)隊列的概念,使用線程池來處理作業(yè),在2001年春天在SourceForge 上創(chuàng)立了該項目.?
Quartz 的目錄結構和內容?
Docs Quartz 框架的JavaDoc Api 說明文檔?
Examples 多方面使用 Quartz 的例子?
Lib Quartz 使用到的第三方包?
quartz-jboss 提供了特定于 JBoss 特性的源代碼?
quartz-oracle 提供了特定于 Oracle 特性的源代碼?
quartz-weblogic 提供了特定于 WebLogic 特性的源代碼?
二 Quartz的應用場景?
場景 #1: 郵件提醒和告警?
場景 #2: 執(zhí)行文件傳輸操作?
場景 #3: 創(chuàng)建銷售報表?
三 Quarta的安裝及使用?
官網:http://www.quartz-scheduler.org/下載最新的文件,需要你注冊才能下載!也可在附件中下載?
四 了解Quartz體系結構?
Quartz對任務調度的領域問題進行了高度的抽象,提出了調度器、任務和觸發(fā)器這3個核心的概念,并在org.quartz通過接口和類對重要的這些核心概念進行描述?
Quartz 調度包的兩個基本單元是作業(yè)和觸發(fā)器。作業(yè)是能夠調度的可執(zhí)行任務,觸發(fā)器提供了對作業(yè)的調度.?
調度器:調度器用于將與作業(yè)觸發(fā)器關聯(lián),一個作業(yè)可關聯(lián)多個觸發(fā)器,這樣每個觸發(fā)器被可以觸發(fā)的作業(yè)執(zhí)行;一個觸發(fā)器可用于控制多個作業(yè),觸發(fā)觸發(fā)時,?
全部作業(yè)將獲得調度。Quartz的調度器由Scheduler接口體現.?
作業(yè):只需實現org.quartz.job接口即可.Job接口包含一個方法 execute(),execute方法體是被調度的作業(yè)體。一旦實現Job接口和execute()方法,?
Quartz確定作業(yè)運作的時候,它將調用 execute()方法體。?
觸發(fā)器:有SimpleTrigger和CronTrigger兩種類型?
?
五 工程圖片?
?
六 具體代碼如下?
Job:是一個接口只有一個方法void execute(JobExecutionContext context),開發(fā)者實現該接口定義運行任務,JobExecutionContext類提供了調度上下文的各種信息。Job運行時的信息保存在JobDataMap實例中?
1 定義一個作業(yè)類: HelloJob.java?
Java代碼?
?
import java.util.Date; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.quartz.Job; import org.quartz.JobExecutionContext; import org.quartz.JobExecutionException; public class HelloJob implements Job { private static Logger _log = LoggerFactory.getLogger(HelloJob.class); public HelloJob() { } public void execute(JobExecutionContext context) throws JobExecutionException { _log.error(" 咫尺天涯: " + new Date()); } }
2 測試類?
Java代碼?
因為上官網下載麻煩,這里就直接上傳了,方便大家下載!目錄結構如下:?
Quartz所用到的jar?
?
上傳Quartz文件如下?
?
官方文檔見附件:quartz-docs.7z
?
下載地址:http://liuzidong.iteye.com/blog/1118992
轉自:http://liuzidong.iteye.com/blog/1118992
?
總結
以上是生活随笔為你收集整理的Quartz 之入门示例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C# Aspose.Word 操作wor
- 下一篇: 使用 Docker 部署 Node 服务