0

取得した時間と X 分ごとにジョブをトリガーする cron 式を作成しようとしています。開始/終了時間と分間隔の両方が、ユーザーから取得したパラメーターです。例えば:

開始時間: 09:15 終了時間: 19:35 分 間隔: 15

ジョブを 09:15 に開始し、15 分ごとにトリガーしたいので、最後のジョブは実際には 19:30 になります (19:35 より後にならないため)。私の問題は、開始/終了時間の分を含める方法がわからないことです..

どうしてこのような表現ができるのでしょうか。

前もって感謝します。

4

2 に答える 2

0

各時間コンポーネント (時間/分/秒など) が個別に処理されるため、単一の cron 式で要件を満たすことはできないと思います。

おそらく最も簡単な方法は、15 分ごとにトリガーを実行し、09:15 と 19:35 にこのトリガーを有効/無効にすることです (例: 追加のトリガーを使用)。

別の方法として、15 分ごとにトリガーを起動し、このトリガーに手続き型ロジックを追加して、作業を行う前に現在の時刻が 09:15 から 19:35 の間であるかどうかを確認することもできます。

于 2013-01-16T16:10:24.447 に答える
0

CRONは必要ありません。単純なトリガーで十分です。レッスン 5: SimpleTriggerを確認してください。これはあなたの状況でうまくいくはずです:

trigger = newTrigger()
    .startAt(nineFifteen)
    .endAt(nineteenThirtyFive)
    .withSchedule(simpleSchedule().withIntervalInMinutes(15))
    .forJob(someJob)
    .build();
于 2013-01-17T17:48:11.413 に答える