博客
关于我
springboot任务之定时任务
阅读量:485 次
发布时间:2019-03-06

本文共 1063 字,大约阅读时间需要 3 分钟。

在启动入口上加上@EnableScheduling注解,在需要定时执行的方法上加上@Scheduled注解,这是Spring Boot中实现定时任务的常用方法。以下是具体操作步骤和常见配置示例。

首先,在需要定时执行的方法上添加@Scheduled注解。这个注解的主要配置参数是cron,用于定义任务的执行时间规则。cron参数由六个部分组成,分别代表不同的时间单位:秒、分钟、小时、天、月、周几。

举个例子,以下代码展示了一个在工作日每周一到周五的整秒执行一次的定时任务:

import org.springframework.scheduling.annotation.Scheduled;import org.springframework.stereotype.Service;@Servicepublic class ScheduledService {    @Scheduled(cron = "0 * * * * MON-FRI")    public void hello() {        System.out.println("hello...");    }}

在上述代码中,cron = "0 * * * * MON-FRI"的含义是:每周一到周五的整秒执行任务一次。具体来说:

  • 0:表示任务从0秒开始执行
  • *:表示秒、分钟、小时、天、月的取值范围是0-59
  • MON-FRI:表示任务在星期一到星期五执行

除了上述简单的配置方式,还可以根据需求使用其他cron表达式。例如:

  • 在指定的秒内执行多次任务:

    @Scheduled(cron = "0,1,2,3,4 * * * * MON-FRI")
  • 在指定的时间间隔内执行任务:

    @Scheduled(cron = "0-4 * * * * MON-FRI")
  • 从某一时间开始,每隔一定间隔执行一次任务:

    @Scheduled(cron = "0/4 * * * * MON-FRI")
  • 了解了这些cron表达式后,可以根据实际需求灵活配置定时任务。

    需要注意的是,定时任务会根据@EnableScheduling注解的启用情况来执行。如果需要在启动时自动启用定时任务,记得在主类上添加@EnableScheduling注解。

    最后,启动Spring Boot应用后,控制台会输出定时任务的执行日志。例如,在13:22:00时,会输出如下的日志信息:

    hello...

    通过以上方法,可以轻松在Spring Boot应用中实现定时任务的配置和管理。

    转载地址:http://ctsbz.baihongyu.com/

    你可能感兴趣的文章
    NLP 基于kashgari和BERT实现中文命名实体识别(NER)
    查看>>
    NLP 项目:维基百科文章爬虫和分类【01】 - 语料库阅读器
    查看>>
    NLP_什么是统计语言模型_条件概率的链式法则_n元统计语言模型_马尔科夫链_数据稀疏(出现了词库中没有的词)_统计语言模型的平滑策略---人工智能工作笔记0035
    查看>>
    NLP学习笔记:使用 Python 进行NLTK
    查看>>
    NLP问答系统:使用 Deepset SQUAD 和 SQuAD v2 度量评估
    查看>>
    NLP:使用 SciKit Learn 的文本矢量化方法
    查看>>
    Nmap扫描教程之Nmap基础知识
    查看>>
    Nmap端口扫描工具Windows安装和命令大全(非常详细)零基础入门到精通,收藏这篇就够了
    查看>>
    NMAP网络扫描工具的安装与使用
    查看>>
    NMF(非负矩阵分解)
    查看>>
    NN&DL4.1 Deep L-layer neural network简介
    查看>>
    NN&DL4.3 Getting your matrix dimensions right
    查看>>
    NN&DL4.8 What does this have to do with the brain?
    查看>>
    No 'Access-Control-Allow-Origin' header is present on the requested resource.
    查看>>
    NO 157 去掉禅道访问地址中的zentao
    查看>>
    No Datastore Session bound to thread, and configuration does not allow creation of non-transactional
    查看>>
    No fallbackFactory instance of type class com.ruoyi---SpringCloud Alibaba_若依微服务框架改造---工作笔记005
    查看>>
    No Feign Client for loadBalancing defined. Did you forget to include spring-cloud-starter-loadbalanc
    查看>>
    No mapping found for HTTP request with URI [/...] in DispatcherServlet with name ...的解决方法
    查看>>
    No mapping found for HTTP request with URI [/logout.do] in DispatcherServlet with name 'springmvc'
    查看>>