簡述
Quartz的3個基本要素
- Scheduler:調度器。所有的調度都是由它控制。Scheduler由scheduler工廠創建:DirectSchedulerFactory或者StdSchedulerFactory。StdSchedulerFactory使用較多,因爲DirectSchedulerFactory使用起來不夠方便,需要作許多詳細的手工編碼設置。Scheduler主要有三種:RemoteMBeanScheduler,RemoteScheduler和StdScheduler。
- Trigger:主要提供了四種類型的trigger:SimpleTrigger,CronTirgger,DateIntervalTrigger和 NthIncludedDayTrigger,但兩個最常用的是SimpleTrigger和CronTrigger
- JobDetail & Job: JobDetail定義的是任務數據,而真正的執行邏輯是在Job中。使用JobDetail + Job而不是Job,這是因爲任務是有可能併發執行,如果Scheduler直接使用Job,就會存在對同一個Job實例併發訪問的問題。而JobDetail & Job 方式,sheduler每次執行,都會根據JobDetail創建一個新的Job實例,這樣就可以規避併發訪問的問題。