3

毎日午後 3 時 (サーバー時間) に実行される Quartz ジョブがあります。私がやりたいのは、午後 3 時に実行することですが、米国のタイム ゾーンごとに実行します。Quartz ジョブは私のユーザーにメールを送信します。私は、全員がそれぞれの時間の午後 3 時にメールを受け取るようにしたいと考えています。複数のスケジュールをセットアップし、そのトリガーの設定されたタイムゾーンでユーザーのデータベースを照会するためだけにこれを行う最良の方法はありますか?

4

1 に答える 1

2

あなたのアイデアは、私が考えることができる最良かつ最もクリーンなアプローチです。複数のトリガーを持つ 1 つのジョブ - 異なるタイム ゾーンを除いて同一。ジョブ内では、現在作業しているタイム ゾーンを簡単に取得できます。

void execute(JobExecutionContext context) {
    TimeZone tz = ((CronTrigger)context.getTrigger()).getTimeZone();
    //find all users in tz
}
于 2012-08-17T21:30:17.863 に答える