系統定時處理業務

springframework已經內置對Quartz的支持,
org.springframework.scheduling.quartz.CronTriggerBean和
org.springframework.scheduling.quartz.JobDetailBean都不需要實面調用起來非常方便,只需在配置文件裏面配置就可,大大提高了項目的開發效率。
CronTriggerBean 可以設定製定的任務在任一時刻調用
JobDetailBean 用來指定調用制度任務
接下來就是定時業務的具體實現:
首先建立調度任務(TimeExample)必須繼承rg.springframework.scheduling.quartz.QuartzJobBean
實現QuartzJobBean的protected void executeInternal(JobExecutionContext arg0)方法。
業務邏輯都是放在executeInternal中,在指定的任務時間JobDetailBean調用 指定的具體任務。

代碼如下:

制定任務

 

 

配置文件:

ps:

value="0 30 0 * * ? *" 時間設定6或7個字符以空格隔開
表1. cronExpression的時間格式

位置 - 含義

1 - 秒(0–59)

2 - 分(0–59)

3 - 時(0–23)

4 - 日(1–31)

5 - 月(1–12)

6 - 星期(SUN–SAT or 1–7)

7 - 年(可選, 1970–2099)

"0 0 12 * * ?" 每天中午12點觸發
"0 15 10 ? * *" 每天上午10:15觸發
"0 15 10 * * ?" 每天上午10:15觸發
"0 15 10 * * ? *" 每天上午10:15觸發
"0 15 10 * * ? 2005" 2005年的每天上午10:15觸發
"0 * 14 * * ?" 在每天下午2點到下午2:59期間的每1分鐘觸發
"0 0/5 14 * * ?" 在每天下午2點到下午2:00期間的每5分鐘觸發
"0 0/5 14,18 * * ?" 在每天下午2點到2:00期間和下午6點到6:00期間的每5分鐘觸發
"0 0-5 14 * * ?" 在每天下午2點到下午2:00-2:05期間的每1分鐘觸發
"0 10,44 14 ? 3 WED" 每年三月的星期三的下午2:10和2:44觸發
"0 15 10 ? * MON-FRI" 週一至週五的上午10:15觸發
"0 15 10 15 * ?" 每月15日上午10:15觸發
"0 15 10 L * ?" 每月最後一日的上午10:15觸發
"0 15 10 ? * 6L" 每月的最後一個星期五上午10:15觸發
"0 15 10 ? * 6L 2002-2005" 2002年至2005年的每月的最後一個星期五上午10:15觸發
"0 15 10 ? * 6#3" 每月的第三個星期五上午10:15觸發

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章