springの定期実行タスクの時刻設定cron式
Springのスケジュールタスクの時間設定は、Cron式を使用して指定されます。
Cron式は、6または7つのスペースで区切られたフィールドによる文字列です。それぞれが秒、分、時、日、月、曜日、年(オプション)を表します。具体的な文法規則は次のとおりです。
- 0から59秒
- 0から59までの分
- 24時間
- 日付(1から31まで)
- 1から12までの月またはJANからDECまで
- 曜日(1から7またはSUNからSAT)または数字を使用する(数字で日曜日は1、月曜日は2、以下同様)。
- 年度 (任意)
以下是一些常見的Cron表達式示例:
- 毎分0秒に実行される
- 毎時のちょうど時間に1回実行します。
- 毎日正午12時に1回実行します。
- 毎日午前8時から午後6時まで、1時間ごとに実行されます。
- 「0 0 12 ? * 月曜日から金曜日まで」:毎週月曜日から金曜日の正午12時に実行します。
- 「0 0 12 ? * 6L」は、毎月最終金曜日の正午12時に実行されます。
Springの設定ファイルで@Scheduledアノテーションを使用してCron表現式を指定して定期タスクを設定できます。以下に示します:
@Component
public class MyScheduledTask {
@Scheduled(cron = "0 * * * * *")
public void run() {
// 定时任务的逻辑
}
}
このように設定すると、定期的なタスクは指定されたCron式に従って実行されます。