使用Java基础定时执行程序

我们在项目中,经常会碰到这样一种需求,就是让某个程序在某个固定的时间去运行,比如定时备份操作。在Java的J2SE的API中可以很容易做到这一点。
让我们需要定时执行的类继承自java.util.TimerTask中的TimerTask类,把需要执行的方法放入run方法中:
 1 import java.util.TimerTask;
 2 
 3 public class MyTimerTask extends TimerTask {
 4 
 5     @Override
 6     public void run() {
 7         System.out.println("备份程序运行……");
 8     }
 9 
10 }
11 
然后我们是java.util.Timer类来执行这个方法,测试类:
 1 import java.util.Timer;
 2 
 3 public class Test {
 4 
 5     public static void main(String[] args) {
 6         Timer timer = new Timer();
 7         timer.schedule(new MyTimerTask(), 1000);
 8 
 9     }
10 
11 }
12 
我们看到控制台输出:
备份程序运行……
那么我们想让这个程序每隔五秒钟运行一次呢,可以这样来做:
1 timer.schedule(new MyTimerTask(),0,5000);
我们传入的第二个参数是方法首次执行时间,第三个参数是方法执行的间隔时间,我们可以在控制台看到:
备份程序运行……
备份程序运行……
备份程序运行……
备份程序运行……
当然我们也可以使用Date来实现定时操作:
1 Timer timer = new Timer();
2         Date date= new Date(107,05,21,00,01,10);
3         timer.schedule(new MyTimerTask(),date,5000);
posted @ 2007-05-21 00:04  樊凯  阅读(7176)  评论(2编辑  收藏  举报