スプリングブート-スケジューリング
スケジューリングは、特定の期間のタスクを実行するプロセスです。 Spring Bootは、Springアプリケーションでスケジューラーを作成するための優れたサポートを提供します。
Java Cron式
Java Cron式は、org.quartz.TriggerのサブクラスであるCronTriggerのインスタンスを構成するために使用されます。 Java cron式の詳細については、このリンクを参照できます-
https://docs.oracle.com/cd/E12058_01/doc/doc.1014/e12030/cron_expressions
@EnableSchedulingアノテーションは、アプリケーションのスケジューラーを有効にするために使用されます。 この注釈は、Spring Bootアプリケーションのメインクラスファイルに追加する必要があります。
@Scheduledアノテーションは、特定の期間スケジューラーをトリガーするために使用されます。
以下は、毎日午前9:00から午前9:59にタスクを毎分実行する方法を示すサンプルコードです。
次のスクリーンショットは、アプリケーションが09:03:23に開始され、cronジョブスケジューラタスクがその時点から1分ごとに実行されたことを示しています。
固定料金
固定レートスケジューラは、特定の時間にタスクを実行するために使用されます。 前のタスクの完了を待ちません。 値はミリ秒単位である必要があります。 サンプルコードはここに示されています-
アプリケーションの起動から毎秒にタスクを実行するためのサンプルコードはここに示されています-
09:12:00に開始され、その後2秒ごとに固定レートスケジューラータスクが実行されたアプリケーションを示す次のスクリーンショットを確認してください。
固定遅延
固定遅延スケジューラは、特定の時間にタスクを実行するために使用されます。 前のタスクの完了を待つ必要があります。 値はミリ秒単位である必要があります。 サンプルコードはここに示されています-
ここで、initialDelayは、初期遅延値の後、タスクが最初に実行されるまでの時間です。
アプリケーションの起動から3秒が完了した後、毎秒タスクを実行する例を以下に示します-
09:18:39に開始され、3秒ごとに、固定遅延スケジューラタスクが毎秒実行されるアプリケーションを示す次のスクリーンショットを確認してください。