0

私の状況では、クライアントはジョブをスケジュールできます。ご覧のとおり、Quartz は cronExpression を使用してスケジュールを実行することがよくあります。しかし、多くのスケジュールを持つ多くのクライアントがあり、多くのトリガー Bean を書くことはできません。なぜなら、実際にいくつのスケジュールがあるのか​​ わからないからです。それはクライアントによって異なります。それで、誰かが助けてくれますか?

4

1 に答える 1

0

Quartzは、実行時にジョブとトリガーを追加および削除するように設計されています。Springは、すべてのトリガーとジョブが起動時に定義される縮退したケースです。Quartzでは、インスタンスをScheduler作成すると、必要に応じてトリガーを簡単に作成、参照、削除できます。例:ハウツー:ジョブのスケジュール

// Define job instance
JobDetail job1 = newJob(ColorJob.class)
    .withIdentity("job1", "group1")
    .build();

// Define a Trigger that will fire "now", and not repeat
Trigger trigger = newTrigger()
    .withIdentity("trigger1", "group1")
    .startNow()
    .build();

// Schedule the job with the trigger 
schedulder.scheduleJob(job, trigger);

公式ドキュメント、特にクックブックを参照してください。

また、ジョブ(実行する必要のあるクラスにラップされたコードの一部)とトリガー(ジョブが実行される時間条件)を区別します。デフォルトでは、ジョブに関連付けられた最後のトリガー(ジョブは複数のトリガーを持つことができます)が発生すると、ジョブはスケジューラーから削除されることに注意してください。

于 2012-07-05T19:41:28.057 に答える