在Spring中,可以使用@Scheduled
注解來配置定時任務。首先,在Spring配置文件中加入以下配置:
<task:annotation-driven/>
然后,在需要執行定時任務的方法上添加 @Scheduled
注解,并設置定時任務的執行時間。例如:
@Scheduled(cron = "0 0 0 * * ?") // 每天凌晨執行
public void myTask() {
// 執行定時任務的邏輯
}
上述代碼表示每天凌晨 0 點執行一次 myTask
方法。
@Scheduled
注解還有其他的屬性可以配置,例如:
fixedRate
:固定頻率執行,即每隔固定時間執行一次,單位為毫秒。fixedDelay
:固定延遲執行,即上一次執行完畢后,延遲固定時間后執行下一次,單位為毫秒。initialDelay
:初始延遲執行,即任務啟動后延遲固定時間后執行第一次,單位為毫秒。cron
:使用 cron 表達式配置定時任務執行時間。例如,使用固定頻率執行:
@Scheduled(fixedRate = 5000) // 每隔 5 秒執行一次
public void myTask() {
// 執行定時任務的邏輯
}
使用固定延遲執行:
@Scheduled(fixedDelay = 5000) // 上一次執行完畢后延遲 5 秒執行下一次
public void myTask() {
// 執行定時任務的邏輯
}
使用初始延遲執行:
@Scheduled(initialDelay = 5000, fixedRate = 5000) // 延遲 5 秒后執行第一次,然后每隔 5 秒執行一次
public void myTask() {
// 執行定時任務的邏輯
}