書接上回,上回說到,我們已經將頁面的時間設置轉為了Cron Expression,下面我記錄了時間規則。
3) 記錄時間規則 我將時間規則存入數據庫中,目的是為了生成歷史日志,也可以存入XML文件中。當然您也可以省略此步,直接將轉換后的規則放入相應的Quartz trigger中。 4) 更新任務觸發器的時間設置 到了關鍵的一步了,也是最簡單的一步,一個方法就可以實現了。 首先,我們需要通過trigger的名稱得到一個CronTriggerBean; 其次,通過trigger的setCronExpression(String cronExp)方法將新的表達式注入; 最后,RESCHEDULE THE JOB,OK!
1
/**
2
* 自定義定時器調度時間
3
*
@param
triggerName 觸發器名稱
4
*
@throws
Exception
5
*/
6
public
void
updateNotificationInterval(String triggerName, String triggerId)
7
throws
SchedulerException, ParseException
{
8
//
得到trigger
9
CronTriggerBean trigger
=
(CronTriggerBean) scheduler.getTrigger(
10
triggerName, Scheduler.DEFAULT_GROUP);
11
//
得到cron expression
12
String cronExpression
=
schedulerDAO.getCronExpression(triggerId);
13
//
設置trigger的時間規則
14
trigger.setCronExpression(cronExpression);
15
//
重置job
16
scheduler.rescheduleJob(triggerName, Scheduler.DEFAULT_GROUP, trigger);
17
}
18

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

至此,目的達到了,快樂的看著您的任務在您自定義的時間下快樂的執行,您是否也想像'Happy Feet'中那只快樂的企鵝一樣,Show段踢踏呢 ; - D
PS:忘了說我的Quartz任務是怎么配置的了,罪過,罪過。




















< ref local ="compareTrigger" />



THE END