@Scheduled的使用

简介: @Scheduled的使用

人之患在好为人师。——《孟子》

今天朋友问我定时任务怎么创建,让我们一起重温复习一下吧~

首先需要在启动类上加@EnableScheduling注解(组件上也可以加)

然后在需要定时的方法上加上@Scheduled注解

package com.ruben.task;
import lombok.extern.slf4j.Slf4j;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
/**
 * @ClassName: LogTask
 * @Description: 我还没有写描述
 * @Date: 2020/12/21 0021 20:11
 * *
 * @author: <achao1441470436@gmail.com>
 * @version: 1.0
 * @since: JDK 1.8
 */
@Slf4j
@Component
public class LogTask {
    @Scheduled(cron = "*/5 * * * * ?")
    public void logRecord() {
        log.info("执行了");
    }
}

然后运行项目,发现每过五秒就执行了一次

关于上面用于指定时间的cron表达式,常用的可以看我这篇博客

如果我们需要给定条件判断是否执行,可以往redis里存一个key,执行开始判断有无此key,有则不执行

相关文章
|
Java Spring
@Scheduled 多个定时任务同时执行
这篇文章主要介绍了springBoot @Scheduled实现多个任务同时开始执行,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
916 0
|
6月前
|
Java 调度 Spring
是否可以实现动态的@Scheduled(cron = "0 0 0 * * *")
【6月更文挑战第12天】是否可以实现动态的@Scheduled(cron = "0 0 0 * * *")
293 5
|
7月前
|
人工智能 算法
ULED X
ULED X 星海大模型
62 1
|
7月前
|
资源调度 分布式计算 算法
Gang Scheduling
Gang Scheduling(Coscheduling)、FIFO Scheduling、Capacity Scheduling、Fair sharing、Binpack/Spread等是云计算和分布式系统中的任务调度算法,用于在资源有限的情况下,公平、高效地分配任务和资源。下面是这些调度算法的基本介绍和如何在实际应用中使用它们的一些建议:
308 2
|
Java Spring
Spring @Scheduled(fixedRate = 120000) 和 @Scheduled(cron = "*/5 * * * * ?")的区别?
Spring @Scheduled(fixedRate = 120000) 和 @Scheduled(cron = "*/5 * * * * ?")的区别?
267 0
|
Java API 调度
多线程实现Spring定时任务@Scheduled
多线程实现Spring定时任务@Scheduled
|
Java 调度
Leetcode-Medium 621. Task Scheduler
Leetcode-Medium 621. Task Scheduler
118 0
Leetcode-Medium 621. Task Scheduler