spring 定时调度

Posted cosy1213

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spring 定时调度相关的知识,希望对你有一定的参考价值。

很多时候,都需要使用定时调度,比如每隔一段时间运行一个爬虫爬取新的数据,实现方法有Quartz,spring task和Timer

spring task可以将它比作一个轻量级的Quartz,而且使用起来很简单,除spring相关的包外不需要额外的包

推荐使用注解式实现

import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;

@Component
public class WebTask {

    // 每五秒执行一次
    @Scheduled(cron = "0/5 * * * * ?")
    public void TaskJob() {
        System.out.println("test");
    }
}

 在相关的配置下加个这句配置,不用其他参数

<task:annotation-driven />

cron的具体解析如下

技术分享图片
字段      允许值     允许的特殊字符
秒       0-59        , - * /
分       0-59        , - * /
小时      0-23        , - * /
日期      1-31        , - * ? / L W C
月份      1-12 或者 JAN-DEC     , - * /
星期      1-7 或者 SUN-SAT      , - * ? / L C #
年(可选)       留空, 1970-2099       , - * /
View Code

 

Quartz

 

以上是关于spring 定时调度的主要内容,如果未能解决你的问题,请参考以下文章

spring 定时调度

Spring与Quartz的整合实现定时任务调度

动态修改Spring定时器

Spring4+Springmvc+quartz实现多线程动态定时调度

spring timetask 定时任务调度

spring cloud互联网分布式微服务云平台规划分析--spring cloud定时调度平台