java定时执行代码

我们在项目中,经常会碰到这样一种需求,就是让某个程序在某个固定的时间去运行,比如定时备份操作。在Java的J2SE的API中可以很容易做到这一点。
让我们需要定时执行的类继承自java.util.TimerTask中的TimerTask类,把需要执行的方法放入run方法中:

import java.util.TimerTask;

public class MyTimerTask extends TimerTask {

       @Override
    public void run() {
           System.out.println( " 备份程序运行…… " );
       }

}




然后我们是java.util.Timer类来执行这个方法,测试类:

import java.util.Timer;

public class Test {

    public static void main(String[] args) {
           Timer timer = new Timer();
           timer.schedule( new MyTimerTask(), 1000 );

       }

}



我们看到控制台输出:

备份程序运行……



那么我们想让这个程序每隔五秒钟运行一次呢,可以这样来做:

timer.schedule( new MyTimerTask(), 0 , 5000 );



我们传入的第二个参数是方法首次执行时间,第三个参数是方法执行的间隔时间,我们可以在控制台看到:

备份程序运行……
备份程序运行……
备份程序运行……
备份程序运行……


当然我们也可以使用Date来实现定时操作:

Timer timer = new Timer();
Date date = new Date( 107 , 05 , 21 , 00 , 01 , 10 );
timer.schedule( new MyTimerTask(),date, 5000 );

你可能感兴趣的:(java,J2SE)