spring boot 2 定时任务
时间: 2024-10-11 17:02:23 浏览: 58
Spring Boot 2 提供了强大的定时任务支持,通常通过内置的`Spring Scheduler`库来实现。你可以利用`@Scheduled`注解轻松地创建定期运行的任务。下面是一个简单的例子:
```java
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
@Component
public class MyTask {
@Scheduled(cron = "0 0 * * * ?") // 每天的0点执行,cron表达式可以根据需要定制
public void executeAtFixedRate() {
System.out.println("This task runs every day at midnight.");
}
@Scheduled(fixedDelay = 5000) // 每隔5秒执行一次
public void executeWithFixedDelay() {
System.out.println("This task executes after a fixed delay of 5 seconds.");
}
}
```
在这个例子中,`executeAtFixedRate`方法按照指定的cron表达式计划执行,而`executeWithFixedDelay`则会在第一次执行之后每隔固定时间执行。
使用`Spring Boot Actuator`,你还可以通过API监控和管理定时任务。此外,Spring Batch和Quartz等第三方库也可以用于复杂的定时作业处理。
阅读全文