1

ブール変数がtrueまたはに変更されたかどうかをチェックするジョブクラスをスケジュールしたいのですが、これは最初は値に設定されていませんが、毎晩cron式を使用して(たとえば1時)、スケジューラーはvarの場合はジョブを終了する必要がありますがtrueまたはfalseに設定されている場合、それ以外の場合は、スケジュールに従って最大15日間ジョブを実行し続けてから、自動的にtrueに設定します。これにはIoCコンテナパターンが適していると思います。これを実装するためのコード全体の概要を提供してください。

4

1 に答える 1

4

Spring には組み込みのスケジューリング機能があります。完全な実装はあなたの裁判所にありますが、以下はスケジュールされたメソッドの例です。この場合は毎日午前 1 時です。

private Boolean scheduleToggle = null;

@Scheduled(cron = "0 0 01 * * ?")
public void myScheduledJob() {
    if(scheduleToggle != null) {
        return;
    } else {
        // run the job
        scheduleToggle = true;
        return;
    }
}

完全な説明と構成の詳細については、http ://static.springsource.org/spring/docs/current/spring-framework-reference/html/scheduling.html を参照してください。

于 2012-09-20T14:23:17.683 に答える