需要導(dǎo)入的依賴
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>2.1.0.RELEASE</version>
</dependency>
cron屬性
格式
{秒數(shù)} {分鐘} {小時(shí)} {日期} {月份} {星期} {年份(可為空)}
秒數(shù) 范圍0-59,不允許為空
分鐘 范圍0-59,不允許為空
小時(shí) 范圍0-23,不允許為空
日期 范圍1-31,不允許為空
星期 1-7,不允許為空,需要注意的是1表示星期天,7表示星期六
年份 1970-2099,可以為空
常用占位符
"" 通配符,可以表示該范圍內(nèi)的任意數(shù)字(如果是秒, 就是0-59,如果是日期,* 就是1-31)
"," 列舉數(shù)字,在指定數(shù)字時(shí)觸發(fā),例如如果在秒的位置上 1,5,8 表示在1秒,5秒,8秒時(shí)觸發(fā)。
"-" 指定范圍,例如在分鐘的位置上 5-20 表示從5分鐘開始到20分鐘結(jié)束,每分鐘都觸發(fā)一次,注意,默認(rèn)間隔為一個(gè)單位。
"/ " 指定間隔單位,例如在分鐘位置上 5-20/5 表示重5分鐘開始到20分鐘結(jié)束,沒5分鐘觸發(fā)一次
"?" 由于日期與星期可能表示同一天,所以兩個(gè)中的一個(gè)必須使用 ?表示互斥。
"L" 來自于英文單詞last,表示最后的意思。只能用于日期和星期的位置上,用在日期上表示每月最后一天,用在星期上表示一星期的最后一天即星期六。如果使用的時(shí)候加上數(shù)字,比如6L,在日期的位置上表示每個(gè)月的倒數(shù)第六天,而日期上2L表示最后一個(gè)星期一。
常用案列:
“30 * * * * ?” 每分鐘的第30秒執(zhí)行
“30 10 * * * ?” 每小時(shí)的10分30秒觸發(fā)任務(wù)
“30 10 1 * * ?” 每天1點(diǎn)10分30秒觸發(fā)任務(wù)
“30 10 1 20 * ?” 每月20號1點(diǎn)10分30秒觸發(fā)任務(wù)
“30 10 1 20 10 ? *” 每年10月20號1點(diǎn)10分30秒觸發(fā)任務(wù)
“30 10 1 20 10 ? 2011” 2011年10月20號1點(diǎn)10分30秒觸發(fā)任務(wù)
“30 10 1 ? 10 * 2011” 2011年10月每天1點(diǎn)10分30秒觸發(fā)任務(wù)
“30 10 1 ? 10 SUN 2011” 2011年10月每周日1點(diǎn)10分30秒觸發(fā)任務(wù)
“15,30,45 * * * * ?” 每15秒,30秒,45秒時(shí)觸發(fā)任務(wù)
“15-45 * * * * ?” 15到45秒內(nèi),每秒都觸發(fā)任務(wù)
“15/5 * * * * ?” 每分鐘的每15秒開始觸發(fā),每隔5秒觸發(fā)一次
“15-30/5 * * * * ?” 每分鐘的15秒到30秒之間開始觸發(fā),每隔5秒觸發(fā)一次
“0 0/3 * * * ?” 每小時(shí)的第0分0秒開始,每三分鐘觸發(fā)一次
“0 15 10 ? * MON-FRI” 星期一到星期五的10點(diǎn)15分0秒觸發(fā)任務(wù)
“0 15 10 L * ?” 每個(gè)月最后一天的10點(diǎn)15分0秒觸發(fā)任務(wù)
“0 15 10 LW * ?” 每個(gè)月最后一個(gè)工作日的10點(diǎn)15分0秒觸發(fā)任務(wù)
“0 15 10 ? * 5L” 每個(gè)月最后一個(gè)星期四的10點(diǎn)15分0秒觸發(fā)任務(wù)
“0 15 10 ? * 5#3” 每個(gè)月第三周的星期四的10點(diǎn)15分0秒觸發(fā)任務(wù)