跳至主要內容

定时任务

chanchaw小于 1 分钟languagejava

概述

spring 中的定时任务不同于 linux 中的 cron,前者只有6个参数:秒,分,时,日,月,周(一周中的周几)。而linux中的cron表达式有7个参数,在 spring 的6个参数后面还有个年份。

案例

指定时间点+间隔执行

在1月6日的10:7:1开始执行,并且每间隔1分钟执行一次,但是超过10点则不会再执行

@Scheduled(cron = "1 7/1 10 6 1 ?")

每天指定时间点执行

下面案例是每天 23:47:01 执行一次

@Scheduled(cron = "1 47 23 * * ?")

每天两个时间点执行

每天 12:47:01 和 23:47:01 执行

@Scheduled(cron = "1 47 12,23 * * ?")

定点再间隔

下面代码执行的时间点是 10:58:01,10:59:01,11:58:01,11:59:01。11点中时也只会在这两分钟中执行

@Scheduled(cron = "1 58/1 10,11 6 1 ?")