当前位置: 代码迷 >> 综合 >> spring boot 定时任务@Scheduled
  详细解决方案

spring boot 定时任务@Scheduled

热度:67   发布时间:2023-11-20 02:41:32.0

1.首先在spring boot的入口类Application.java中启动定时器,只要在类上加注解@EnableScheduling即可启动定时器。

package com.sinosoft.signpass;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.scheduling.annotation.EnableScheduling;

@SpringBootApplication
@EnableScheduling
public class Application {

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

}

2.application.properties配置文件配置时间。

jobs.schedule=0 0 9 * * ?

3.在定时类要定时执行的方法上加上注解 @Scheduled(cron=”${jobs.schedule}”) 即可。

package com.sinosoft.signpass.scheduled;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;

@Component
public class TimerController {

 @Scheduled(cron="${jobs.schedule}") private void task(){System.out.println("nmj");}

}

配置时间可能会用到@Scheduled(fixedRate = 6000)这个配置,这是配置每个多少时间执行任务,不明白的朋友可以查查cron属性和fixedRate属性的区别

  相关解决方案