spring boot @Scheduled 定时任务

@Scheduled中参数说明
@Scheduled(fixedRate=2000):上一次开始执行时间点后2秒再次执行;

@Scheduled(fixedDelay=2000):上一次执行完毕时间点后2秒再次执行;

@Scheduled(initialDelay=1000, fixedDelay=2000):第一次延迟1秒执行,然后在上一次执行完毕时间点后2秒再次执行;

@Scheduled(cron="* * * * * ?"):按cron规则执行。
注解中给定时间
@Component
public class ExampleTimer {

        /*每100秒执行一次*/
        @Scheduled(fixedRate = 100000)
        public void timerRate() {
            //do something....
        }

        /*第一次10秒后执行,当执行完后2秒再执行*/
        @Scheduled(initialDelay = 10000, fixedDelay = 2000)
        public void timerInit() {
                        //do something....
        }

        /*每天15:39:00时执行*/
        @Scheduled(cron = "0 39 15 * * ? ")
        public void timerCron() {
                        //do something....
        }
}
配置文件给定时间
@Component
public class ScheduledTask {

  private static final SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");

  @Scheduled(fixedDelayString = "${jobs.fixedDelay}")
  public void getTask1() {
    System.out.println("任务1,从配置文件加载任务信息,当前时间:" + dateFormat.format(new Date()));
  }

  @Scheduled(cron = "${jobs.cron}")
  public void getTask2() {
    System.out.println("任务2,从配置文件加载任务信息,当前时间:" + dateFormat.format(new Date()));
  }
}
application.properties
jobs.fixedDelay=5000
jobs.cron=0/5 * *  * * ?
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值