アノテーションインターフェース Scheduled


スケジュールするメソッドをマークするアノテーション。cron()fixedDelay()fixedRate() のいずれかの属性を指定する必要があります。

アノテーション付きメソッドは引数を必要としません。通常、戻り値の型は void になります。そうでない場合、スケジューラーを介して呼び出された場合、戻り値は無視されます。

@Scheduled アノテーションの処理は、ScheduledAnnotationBeanPostProcessor を登録することによって実行されます。これは、手動で実行することも、<task:annotation-driven/> XML 要素または @EnableScheduling アノテーションを介して実行する方が便利です。

このアノテーションは繰り返し可能なSEアノテーションとして使用できます。同じメソッドで複数のスケジュールされた宣言が見つかった場合、それぞれ独立して処理され、それぞれに対して個別のトリガーが起動されます。結果として、そのような同じ場所に配置されたスケジュールは重複し、並行してまたはすぐに連続して複数回実行される可能性があります。

このアノテーションをメタアノテーションとして使用して、属性をオーバーライドしたカスタム合成アノテーションを作成できます。

導入:
3.0
作成者:
Mark Fisher, Juergen Hoeller, Dave Syer, Chris Beams, Victor Brown, Sam Brannen
関連事項:
  • フィールドの詳細

    • CRON_DISABLED

      static final StringSE CRON_DISABLED
      無効なトリガーを示す特別な cron 式値: "-"。

      これは、主に ${...} プレースホルダーで使用するためのもので、対応するスケジュールされたメソッドを外部で無効にすることができます。

      導入:
      5.1
      関連事項:
  • 要素の詳細

    • cron

      StringSE cron
      cron のような表現で、通常の UN*X 定義を継承して、秒、分、時間、日、月、曜日のトリガーを含めます。

      例: "0 * * * * MON-FRI" は、平日の 1 分間に 1 回(その分で -0 秒)を意味します。

      左から右に読み取られるフィールドは、次のように解釈されます。

      • 時間
      • 月の日
      • 曜日

      特別な値 "-" は、主に ${...} プレースホルダーによって解決される外部で指定された値を対象とした無効な cron トリガーを示します。

      戻り値:
      cron スケジュールに解析できる式
      関連事項:
      デフォルト:
      ""
    • zone

      StringSE zone
      cron 式が解決されるタイムゾーン。デフォルトでは、この属性は空の文字列です(つまり、サーバーのローカルタイムゾーンが使用されます)。
      戻り値:
      TimeZone.getTimeZone(String)SE が受け入れるゾーン ID、またはサーバーのデフォルトのタイムゾーンを示す空の文字列
      導入:
      4.0
      関連事項:
      デフォルト:
      ""
    • fixedDelay

      long fixedDelay
      最後の呼び出しの終了から次の呼び出しの開始までの期間を固定して、アノテーション付きメソッドを実行します。

      時間の単位はデフォルトでミリ秒ですが、timeUnit() を介してオーバーライドできます。

      戻り値:
      遅延
      デフォルト:
      -1L
    • fixedDelayString

      StringSE fixedDelayString
      最後の呼び出しの終了から次の呼び出しの開始までの期間を固定して、アノテーション付きメソッドを実行します。

      時間の単位はデフォルトでミリ秒ですが、timeUnit() を介してオーバーライドできます。

      この属性バリアントは、Spring スタイルの "${...}" プレースホルダーと SpEL 式をサポートします。

      戻り値:
      文字列値としての遅延 - たとえば、プレースホルダーまたは java.time.DurationSE 準拠の値
      導入:
      3.2.2
      関連事項:
      デフォルト:
      ""
    • fixedRate

      long fixedRate
      呼び出しの間隔を固定して、アノテーション付きメソッドを実行します。

      時間の単位はデフォルトでミリ秒ですが、timeUnit() を介してオーバーライドできます。

      戻り値:
      期間
      デフォルト:
      -1L
    • fixedRateString

      StringSE fixedRateString
      呼び出しの間隔を固定して、アノテーション付きメソッドを実行します。

      時間の単位はデフォルトでミリ秒ですが、timeUnit() を介してオーバーライドできます。

      この属性バリアントは、Spring スタイルの "${...}" プレースホルダーと SpEL 式をサポートします。

      戻り値:
      文字列値としてのピリオド - たとえば、プレースホルダーまたは java.time.DurationSE 準拠の値
      導入:
      3.2.2
      関連事項:
      デフォルト:
      ""
    • initialDelay

      long initialDelay
      fixedRate() または fixedDelay() タスクの最初の実行までに遅延する時間の単位数。

      時間の単位はデフォルトでミリ秒ですが、timeUnit() を介してオーバーライドできます。

      戻り値:
      初期
      導入:
      3.2
      デフォルト:
      -1L
    • initialDelayString

      StringSE initialDelayString
      fixedRate() または fixedDelay() タスクの最初の実行までに遅延する時間の単位数。

      時間の単位はデフォルトでミリ秒ですが、timeUnit() を介してオーバーライドできます。

      この属性バリアントは、Spring スタイルの "${...}" プレースホルダーと SpEL 式をサポートします。

      戻り値:
      文字列値としての初期遅延 - たとえば、プレースホルダーまたは java.time.DurationSE 準拠の値
      導入:
      3.2.2
      関連事項:
      デフォルト:
      ""
    • timeUnit

      TimeUnitSE timeUnit
      戻り値:
      使用する TimeUnit 
      導入:
      5.3.10
      デフォルト:
      MILLISECONDS