我想在Spring Boot中创建一个时间,它应该在java启动(initialDelay)5分钟后首先启动,并且从下次开始它应该在每天早上5点运行
我尝试使用下面的代码,但是 Tomcat 停止了并且 Java 没有启动。
@Service
public class ServiceHandler {
@Scheduled(initialDelay = 5 * 60 * 100, cron = "0 0 5 * * *")
public void SomeTimer() {
//some code
}
}
Spring Boot 主要类:
@EnableScheduling
public class AppMain {
public static void main(String[] args) {
SpringApplication.run(AppMain.class, args);
}
}
使用这个例子:
@Component
public class SimpleScheduler {
@EventListener(ApplicationReadyEvent.class)
public void run() throws InterruptedException {
Thread.sleep(5 * 60 * 1000);
process();
}
@Scheduled(cron = "0 0 17 * * ?")
public void cron() {
process();
}
private void process() {
System.out.println("RUN");
}
}
考虑将 @EnableScheduling 添加到您的应用程序运行器类中。