@Scheduled 一周执行一次
时间: 2024-09-14 13:16:42 浏览: 49
使用spring @Scheduled注解执行定时任务
3星 · 编辑精心推荐
`@Scheduled` 是Spring框架中用于定时任务的一个注解,它可以用来配置一个定时任务的执行时间。如果你想要配置一个任务每周执行一次,你需要使用cron表达式来指定执行的时间规则。
一个cron表达式通常包含6个或7个空格分隔的时间字段,分别代表以下含义:
- 第二个字段是分钟(0-59)
- 第三个字段是小时(0-23)
- 第四个字段是月份中的日期(1-31)
- 第五个字段是月份(1-12)
- 第六个字段是星期中的日期(1-7,其中1代表星期日)
- 第七个字段是年份(可选字段)
如果你想要任务在每周的特定时间执行,比如每周日上午10点0分0秒执行,那么你可以这样配置:
```java
@Component
public class ScheduledTasks {
@Scheduled(cron = "0 0 10 ? * SUN *")
public void executeWeeklyTask() {
// 任务逻辑
}
}
```
在上述例子中,`cron`属性设置了一个cron表达式,其中`?`用于日期和星期字段中,表示不指定具体日期或星期,这样可以让日期或星期中的一个字段为任意值,从而实现每周执行。星期字段为`SUN`表示这个任务只在星期日执行。
阅读全文