定期的にメソッドを実行するタイマーを Java で作成する
ステップ 1: TimerTask を拡張するテスト クラスを作成し、 run メソッドに実行するロジック コードを含めます。 例は次のとおりです。 :
import java .text.SimpleDateFormat;
import java.util.Date;
import java.util.TimerTask;
public class MyTest1 extends TimerTask {
private SimpleDateFormat sf=new SimpleDateFormat("yyyy-MM-dd hh: mm:ss") ;
@Override
public void run() {
System.out.println("現在時刻は: "+sf.format(new Date()));
//プログラムロジックコードを書き込むここ
}
}
ステップ 2: ServletContextListener インターフェースを実装するクラスを作成します
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
public class TimerTaskManagerimplements ServletContextListener {
タイマータイマー;
@Override
public void contextInitialized(ServletContextEvent sce) {
System.out.println("プログラムは定期的にタスクを実行します。 ... ......");
MyTest1 t=new MyTest1();
timer=new Timer("タスクの実行開始",true);//
timer.schedule(t, 0, 1000 );/ /MyTest1 で run メソッドを実行します。t は TimerTask のサブクラスを表します。0 は run メソッドを実行するための 0 ミリ秒の遅延を表します。1000 は run メソッドを毎秒実行することを表します。最後の 2 つのパラメータは、次のパラメータに従って定義できます。自分のニーズ
}
@Override
public void contextDestroyed(ServletContextEvent sce) {
System.out.println("プログラムのスケジュールされた実行タスクが終了します.... ............");
timer.cancel();
}
}
ステップ 3: 次のコードを web.xml に追加し、 TimerTaskManager のパス。プログラムは Web 上にあります。コンテナーが開始されると、TimerTaskManager の contextInitialized メソッドが初期化されてロードされます。
リスナー タグを追加し、リスナー内にlistener-class タグを追加し、リスナー内のコンテンツを追加します。 -class タグは、TimerTaskManager のパスです。com.TimerTaskManager
その他 メソッドを定期的に実行するためのタイマーを複数の Java に記述します。関連記事については、PHP 中国語 Web サイトに注目してください。