SpringBoot集成Quartz示例
依赖:
<dependency> <groupId>org.quartz-scheduler</groupId> <artifactId>quartz</artifactId> <version>2.2.3</version> </dependency>
时间格式:
[秒] [分] [时] [日] [月] [周] [年]
-
*字符表示指定字段的所有可能值 ‘?’ 字符可以在day-of-month和day-of-week 字段中使用,用来表示没有指定值 L’字符可以在day-of-month和day-of-week 字段中使用,这个字符表示最后一个的意思 #字符用来表示这个月的第几个XXX,比如day-of-week字段的"6#3"表示这个月的第三个星期五 ‘/’ 字符可以用来指定增量,比如如果指定Minute字段为"0/15"表示在第0分钟启动,每隔15分钟的间隔;"3/20"表示每三分钟启动,每隔20分钟的间隔
测试类:
@Component @Configurable @EnableScheduling public class QuartzTest { @Scheduled(cron = "*/5 * * * * * ") public void doTask(){ SimpleDateFormat formatter= new SimpleDateFormat("yyyy-MM-dd / HH:mm:ss z"); Date date = new Date(System.currentTimeMillis()); System.out.println("------> EXECUTE AT : " + date.toString()); } }
说明:@Component声明属于组件,@Configurable用于被SpringBoot扫描并初始化,@EnableScheduling声明该类属于计划任务。@Scheduled:声明要执行的任务。括号内输入参数。
执行结果: