毎年特定の日付にメソッドを実行する必要があります。Java でこれを行うにはどうすればよいですか?
ありがとう、
クリス。
優先順に:
Quartzライブラリ(強くお勧めします)。
java.util.Timer
。Quartzほど強力ではありませんが、単純な作業には適しています。
EJBタイマーサービス。文書化が不十分で、完全なJava EEコンテナーが必要であり、Quartzが実行しないことは実際には何も実行しません。
タイマークラスをチェックしてください
方法:
scheduleAtFixedRate(TimerTask task, Date firstTime, long period)
Schedules the specified task for repeated fixed-rate execution, beginning at the specified time.
あなたがやりたいことをすることができます。正しい日付を使用していることを確認してください。
APIを見るとTimerTask
、run()メソッドをオーバーロードするを定義する必要があります。run()メソッドには、呼び出したいメソッドが含まれます。
より堅牢なものが必要な場合は、スケジューリングのようにQuartzforCronを使用することもできます
これにより、現在の日付と時刻が取得されます。
import java.util.Date;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
private String getDateTime() {
DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
Date date = new Date();
return dateFormat.format(date);
}
次に、関数を毎秒チェックするループを作成し、必要な時間であれば if ステートメントを使用して必要なコードを実行します。