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:声明要执行的任务。括号内输入参数。

执行结果:

经验分享 程序员 微信小程序 职场和发展