springboot|springboot配置定时任务及常用的cron表达式

javaDEMO

本网站记录了最全的各种JavaDEMO ,保证下载,复制就是可用的,包括基础的, 集合的, spring的, Mybatis的等等各种,助力你从菜鸟到大牛,记得收藏哦~~
https://www.javastudy.cloud

springboot引入定时任务

springboot引入定时任务主要需要以下几步:
1.引入相关的依赖
2.配置程序开启定时任务
3. 编写定时任务

引入相关的依赖

只用引一个基础的web的依赖就可以了

implementation 'org.springframework.boot:spring-boot-starter-web'

配置程序开启定时任务

只需要在Springboot的Main函数的那个类上加个注解就可以了

/**
 * 只需要在这里面加上一个@EnableScheduling这个注解就可以了
 */
@SpringBootApplication
@EnableScheduling
public class DemoApplication {


public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
  }


}
编写定时任务

一般定时任务都会放在task包下面,代码如下:

/**
 * @Author https://www.javastudy.cloud
 * @CreateTime 2019/11/5
 **/
@Component
public class TestTask {


    /**
     * 定时任务的类和别的springBean没什么区别
     * 方法上要加@Scheduled,里面写定时的cron表达式
     */
    @Scheduled(cron = "0/5 * * * * *")
    public void testSchedule(){
        System.out.println(new Date());
        System.out.println("这个是每5秒执行一次");
    }
}

输出结果如下:

常用的cron表达式

对于cron表达式不太熟悉的同学,可以去这个在线网站进行生成https://qqe2.com/cron
cron表达式是从后往前读的,遇到 * 就读每XX, 遇到数字就读 从第XX开始, 遇到 / 就读每隔多XX最后加个执行
如上述DEMO中

cron = "0/5 * * * * *"

每星期,每年,每月,每天,每小时,每分钟,从第0秒开始每隔5秒执行一次
以此类推,有以下常用表达式:
每隔10分钟执行一次:0 0/10 * * * *
每天18点执行一次:0 0 18 * * *
每月1号凌晨3点执行一次:0 0 3 1 * *

DEMO总评

定时任务这块,一般小项目会这样去写,在实际生产中,会使用分布式定时任务框架去集中配置,不会分散在各个应用里面,主要的难点在于cron表达式,不好写,需要多总结,才能写出对的cron表达式

DEMO源码下载

https://img.hacpai.com/file/2019/11/demospringbootschedule-5e3ad202.zip

可添加小刀微信获取源码

往期热文

docker|docker安装redis

springboot|新建Controller和RestController接收请求

springboot|springboot新建aop切面

docker|docker安装mysql数据库

点在看的都没有bug!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值