@Scheduled(cron = "")
Cron表达式是一种用于指定定时任务执行时间的字符串表达式。它由6个或7个字段组成,每个字段代表任务在秒、分、小时、日期、月份和星期几这些时间维度上的触发条件。
一个标准的Cron表达式包括以下字段:
- 秒(可选):取值范围为0-59。
- 分钟:取值范围为0-59。
- 小时:取值范围为0-23。
- 日期:取值范围为1-31。
- 月份:取值范围为1-12。
- 星期几:取值范围为0-7(0和7均代表周日,1代表周一,以此类推)。
除了基本的取值范围外,Cron表达式还可以使用一些特殊字符:
*
:代表所有可能的值。例如,*
在分钟字段上表示每分钟都触发,*
在小时字段上表示每小时都触发。,
:用于列举多个取值。例如,1,3,5
在月份字段上表示1月、3月和5月都触发。-
:用于指定一个取值范围。例如,3-7
在日期字段上表示从3号到7号都触发。/
:用于指定一个增量。例如,0/5
在分钟字段上表示从0分开始,每隔5分钟触发一次。
下面是一些常见的示例:
0 0 12 * * ?
:每天中午12点触发。0 0/30 * * * ?
:每隔30分钟触发一次。0 0 8-10 * * ?
:每天上午8点到10点期间每个整点触发。0 0 6,18 * * ?
:每天早上6点和晚上18点触发。0 0 9-17 * * 1-5
:每周一至周五,上午9点到下午5点期间每个整点触发。
需要注意的是,Cron表达式并不适用于所有定时任务的情况。在某些复杂的时间规则下,可能需要使用其他方式来指定任务的执行时间。