如何使用spring定时器

  • 单体定时任务
  • corn生成器:https://www.pppet.net/

yml配置文件

在这里插入图片描述

# 每天凌晨3点执行一次
job:
  transferNetworkJobCron: 0 0 3 * * ?

定时任务类

  • 这里的 @Scheduled(cron = "${job.transferNetworkJobCron:0/1 * * * * ? }")
  • 表示如果yml配置文件里没有编写job.transferNetworkJobCron的属性,则默认使用0/1 * * * * ?作为值,最终会解析成 @Scheduled(cron = "0/1 * * * * ?") 否则则使用配置文件所配置的属性值
@Component
@EnableScheduling
public class transferNetworkJob {


    //@Scheduled(cron="*/5 * * * * ?") //每五秒钟执行
    //@Scheduled(cron="0 0/30 * * * ?") //每半小时执行
    //@Scheduled(cron="0 0 3 * * ?") //每天凌晨三点执行
    @Scheduled(cron="0 0/10 * * * ? ") //每十分钟执行
    @Scheduled(cron = "${job.transferNetworkJobCron:0/1 * * * * ? }")//每秒执行一次
    public void  findTransferNetwork(){
        System.out.println("ZeKi大帅比");
    }

}

相关注解

fixedDelay

  • fixedDelay非常好理解,它的间隔时间是根据上次的任务结束的时候开始计时的。比如一个方法上设置了fixedDelay=5*1000,那么当该方法某一次执行结束后,开始计算时间,当时间达到5秒,就开始再次执行该方法。
@Scheduled(fixedDelay = 5000) //5秒

fixedRate

  • 如果任务的处理时间大于fixedRate配置的时间,那么当任务结束的时候则会立马执行。如果是在相隔的时间段内处理完毕,假设设置的是5s,任务花了3s执行完毕,那么在2s后则会执行下一个任务。
@Scheduled(fixedRate= 5000) //5秒
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值