執行定時業務two

2021-08-31 05:11:43 字數 2478 閱讀 6879

關於簡單觸發器和複雜觸發器,查考下面的解釋:

crontrigger是基於calendar-like排程的。當你需要在除星期六和星期天外的每天上午10點半執行作業時,那麼應該使用crontrigger。正如它的名字所暗示的那樣,crontrigger是基於unix轉殖表示式的。

作為乙個例子,下面的quartz轉殖表示式將在星期一到星期五的每天上午10點15分執行乙個作業。

0 15 10 * mon-fri

下面的表示式

0 15 10 * 6l 2002-2005

將在2023年到2023年的每個月的最後乙個星期五上午10點15分執行作業。

你不可能用******trigger來做這些事情。你可以用兩者之中的任何乙個,但哪個跟合適則取決於你的排程需要。

關於cronexpression的介紹:

字段 允許值 允許的特殊字元

秒 0-59 , - * /

分 0-59 , - * /

小時 0-23 , - * /

日期 1-31 , - * / l w c

月份 1-12 或者 jan-dec , - * /

星期 1-7 或者 sun-sat , - * / l c #

年(可選) 留空, 1970-2099 , - * /

如上面的表示式所示:

「*」字元被用來指定所有的值。如:」*「在分鐘的字段域裡表示「每分鐘」。

「-」字元被用來指定乙個範圍。如:「10-12」在小時域意味著「10點、11點、12點」。

「,」字元被用來指定另外的值。如:「mon,wed,fri」在星期域裡表示」星期

一、星期

三、星期五」.

「?」字元只在日期域和星期域中使用。它被用來指定「非明確的值」。當你需要通過在這兩個域中的乙個來指定一些東西的時候,它是有用的。看下面的例子你就會明白。

「l」字元指定在月或者星期中的某天(最後一天)。即「last 」的縮寫。但是在星期和月中「l」表示不同的意思,如:在月子段中「l」指月份的最後一天-1月31日,2月28日,如果在星期欄位中則簡單的表示為「7」或者「sat」。如果在星期欄位中在某個value值得後面,則表示「某月的最後乙個星期value」,如「6l」表示某月的最後乙個星期五。

「w」字元只能用在月份欄位中,該欄位指定了離指定日期最近的那個星期日。

「#」字元只能用在星期字段,該欄位指定了第幾個星期value在某月中

表示式意義

"0 0 12 * * ?" 每天中午12點觸發

"0 15 10 ? * *" 每天上午10:15觸發

"0 15 10 * * ?" 每天上午10:15觸發

"0 15 10 * * ? *" 每天上午10:15觸發

"0 15 10 * * ? 2005" 2023年的每天上午10:15觸發

"0 * 14 * * ?" 在每天下午2點到下午2:59期間的每1分鐘觸發

"0 0/5 14 * * ?" 在每天下午2點到下午2:55期間的每5分鐘觸發

"0 0/5 14,18 * * ?" 在每天下午2點到2:55期間和下午6點到6:55期間的每5分鐘觸發

"0 0-5 14 * * ?" 在每天下午2點到下午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" 2023年至2023年的每月的最後乙個星期五上午10:15觸發

"0 15 10 ? * 6#3" 每月的第三個星期五上午10:15觸發

每天早上6點

0 6 * * *

每兩個小時

0 */2 * * *

晚上11點到早上8點之間每兩個小時,早上八點

0 23-7/2,8 * * *

每個月的4號和每個禮拜的禮拜一到禮拜三的早上11點

0 11 4 * 1-3

1月1日早上4點

0 4 1 1 *

定時批處理作業是j2ee企業應用裡很重要的一環,用來在晚間進行財務掛賬,資料轉存,新聞聯播等等操作。

而在spring裡,已經很好的整合了quartz,簡單到像配cron一樣,在xml檔案裡面配一下時間就可以自動執行,不需要寫一行**。spring對quartz大刀闊斧的簡化堪稱範例,quartz專案組也許可以學習一下。

**

confirmorder

0 0 6,12,20 * * ?

上面這段配置檔案規定了在早上6點和晚上8點執行financedao物件的confirmorder()方法.

python定時任務,隔月執行,隔定時執行

blockingscheduler定時任務 from apscheduler.schedulers.blocking import blockingscheduler from datetime import datetime 首先看看周一到周五定時執行任務 輸出時間 def job print d...

定時執行任務

在windows上,使用configuration task scheduler 任務計畫程式 task scheduler library 任務計畫程式庫 create task.或者 control panel scheduled tasks add a scheduled task.在linu...

定時執行備份

centos 作業系統 1.編寫備份程式 2.使用crontab命令,定時執行備份程式 步驟一 編寫備份檔案bak.py coding utf 8 import os import time source root a.py 目標目錄 targetdir root backup 目標目錄下的當天日期...