日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

Spring Cron Expression

發(fā)布時(shí)間:2024/4/14 javascript 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Spring Cron Expression 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

2019獨(dú)角獸企業(yè)重金招聘Python工程師標(biāo)準(zhǔn)>>>

一、簡(jiǎn)介

CRON表達(dá)式是由6個(gè)或7個(gè)由空格分隔的元素組成的字符串,這些元素可以包含任何允許的值,以及該元素所允許的特殊字符的不同組合。元素如下:

1-1 ?CRON表達(dá)式允許的元素和值

元素

是否必須

允許的值

允許的特殊字符

Y

0-59

, - * /

分鐘

Y

0-59

, - * /

小時(shí)

Y

0-23

, - * /

日期

Y

1-31

, - * ? / L W

月份

Y

1-12 或者 JAN-DEC

, - * /

星期

Y

1-7 或者 SUN-SAT

, - * ? / L #

年份

N

空 或者 1970-2199

, - * /

二、特殊字符說明

*:用來指定所有值。例如,如果元素分鐘為“*”,那么就表示每一分鐘;

?:用來表示無指定值。只有日期和星期這兩個(gè)元素可以使用“?”。當(dāng)你想要指定這兩個(gè)元素中的一個(gè)元素的值時(shí)非常有用,因?yàn)?/span>日期和星期不能同時(shí)設(shè)值。例如,如果想在某個(gè)月特定的一天(比如10號(hào))觸發(fā),但是不管那一天是星期幾,則可以將元素日期的值設(shè)置為“10”,元素星期的值設(shè)置為“?”;

-:用來指定范圍內(nèi)的值。例如,元素小時(shí)為“10-12”,則表示10點(diǎn)、11點(diǎn)、12點(diǎn);

,: 用來分隔一個(gè)元素的多個(gè)值。例如,元素星期為"MON,WED,FRI",則表示周一、周三和周五;

/:用來表示增量。例如,元素秒為“0/15”,則表示第0, 15秒,30秒以及45秒。 元素秒為“5/15, 則表示5秒,20,35秒以及50。 在"/"前指定“*”等價(jià)于在"/"前指定0作為起始值。對(duì)于表達(dá)式的每個(gè)元素都有數(shù)字范圍,具體參見表1-1,"/"只是在給定值范圍內(nèi)每隔N觸發(fā)。因此請(qǐng)?zhí)貏e注意,月份為"7/6",表示僅在7月份觸發(fā),并不是每6個(gè)月觸發(fā)一次。斜杠前的數(shù)字表示起始值,后面的數(shù)字表示增量

L:只能用于“日期”和“星期”這兩個(gè)元素。這個(gè)字符是“last”的縮寫,但是對(duì)于這兩個(gè)不同的元素,有著不同的含義。例如,對(duì)于日期元素,值“L”代表“這個(gè)月的最后一天”——1月份是31號(hào),閏年的二月份是28號(hào)。如果“L”用于星期元素,則簡(jiǎn)單的表示“7”或者“SAT”;但是如果它跟在數(shù)字后面用于星期元素,則表示“這個(gè)月最后的XXX天”——例如“6L”或者“FRIL”都表示“這個(gè)月最后一個(gè)星期五”。你也可以從某個(gè)月的最后一天指定一個(gè)偏移量,例如“L-3”表示歷月的倒數(shù)第3天。 注意,當(dāng)使用選項(xiàng)“L”時(shí),不要指定列表值或者范圍值,否則結(jié)果會(huì)讓你比較困惑。

W:用來指定離給定日期最近的工作日(星期一至星期五),只能用于日期元素。例如,15W,則表示離這個(gè)月15號(hào)最近的工作日。如果15號(hào)是星期六,那么觸發(fā)器將會(huì)在14號(hào)星期五觸發(fā)。如果15號(hào)是星期天,那么觸發(fā)器將會(huì)在16號(hào)星期一觸發(fā)。如果15號(hào)是星期二,那么它將在15號(hào)星期二觸發(fā)。然而如果你指定“日期”元素的值為“1W”,并且1號(hào)是星期六,觸發(fā)器將在3號(hào)星期一觸發(fā),它不會(huì)跨躍一個(gè)月的天數(shù)邊界。只有當(dāng)日期是單一的一天才能指定“W”,而不能是一個(gè)日期范圍或者列表

#:只能用于元素星期。該字符用來指定這個(gè)月第N個(gè)星期X。例如“6#3”,它表示這個(gè)月第三個(gè)星期五(6 =星期五,"#3" =這個(gè)月第三個(gè))。再如,“2#1”表示這個(gè)月第一個(gè)星期一, "4#5"表示這個(gè)月第五個(gè)星期四。注意如果你指定"#5"并且這個(gè)月沒有5個(gè)給定的星期,那么這個(gè)月將不會(huì)觸發(fā)。如果使用字符'#',元素星期只能使用一個(gè)表達(dá)式("3#1,6#3" 是無效的,因?yàn)橛袃蓚€(gè)表達(dá)式)。#前面的數(shù)字代表星期幾,后面的數(shù)字表示是第幾個(gè)

三、配置示例

下面是CRON表達(dá)式的一些配置示例:

表達(dá)式

含義

0 0 12 * * ?

每天中午12:00觸發(fā)

0 15 10 ? * *

每天上午10:15觸發(fā)

0 15 10 * * ?

每天上午10:15觸發(fā)

0 15 10 * * ? *

每天上午10:15觸發(fā)

0 15 10 * * ? 2005

2005年的每天上午10:15觸發(fā)

0 * 14 * * ?

每天,從下午2:002:59,每分鐘觸發(fā)一次

0 0/5 14 * * ?

每天,從下午2:002:55,每五分鐘觸發(fā)一次

0 0/5 14,18 * * ?

每天,從下午2:002:55,每五分鐘觸發(fā)一次,并且從下午6:006:55,每五分鐘觸發(fā)一次

0 0-5 14 * * ?

每天,從下午2:002:05,每分鐘觸發(fā)一次

0 10,44 14 ? 3 WED

三月份的每個(gè)星期三的下午2:10和下午2:44觸發(fā)

0 15 10 ? * MON-FRI

從星期一到星期五每天上午10:15觸發(fā)

0 15 10 15 * ?

每個(gè)月15號(hào)上午10:15觸發(fā)

0 15 10 L * ?

每個(gè)月最后一天上午10:15觸發(fā)

0 15 10 ? * 6L

每個(gè)月最后一個(gè)星期五上午10:15觸發(fā)

0 15 10 ? * 6L 2002-2005

2002, 2003, 2004以及2005年的每個(gè)月最后一個(gè)星期五上午10:15觸發(fā)

0 15 10 ? * 6#3

每個(gè)月第三個(gè)星期五的上午10:15觸發(fā)

0 0 12 1/5 * ?

每個(gè)月從第一天中午12:00開始,每5天觸發(fā)一次

0 11 11 11 11 ?

每年1111日上午11:11觸發(fā)

0 0 23-7/2,8 * * ?

晚上11點(diǎn)到早上8點(diǎn)之間每?jī)蓚€(gè)小時(shí)觸發(fā)一次,早上八點(diǎn)觸發(fā)一次

?

四、注意事項(xiàng)

1、 本文檔基于Quartz 2.2.X

2、 支持范圍溢出,即左邊的值比右邊的值大。例如,可以使用“22-2”來表示當(dāng)天

晚上10點(diǎn)到第二天凌晨2點(diǎn), 或者也可以使用“NOV-FEB”。過度使用范圍溢出來創(chuàng)建范圍沒有任何意義。

轉(zhuǎn)載于:https://my.oschina.net/jackieyeah/blog/182091

超強(qiáng)干貨來襲 云風(fēng)專訪:近40年碼齡,通宵達(dá)旦的技術(shù)人生

總結(jié)

以上是生活随笔為你收集整理的Spring Cron Expression的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。