java Timer實現定時器

/*
* 文件名:MyTask.java
*/

import java.util.Date;
import java.util.TimerTask;

public class MyTask extends TimerTask
{
@Override
public void run()
{
System.out.println("call at "+new Date());
}
}
/*
* 文件名:MyListener.java
*/

import java.util.Timer;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;

public class MyListener implements ServletContextListener
{

private Timer timer=null;

public void contextDestroyed(ServletContextEvent arg0)
{
timer.cancel();
}

public void contextInitialized(ServletContextEvent arg0)
{
timer = new Timer(true);
//設置任務計劃,啓動和間隔時間
timer.schedule(new MyTask(), 0, 1000);
}

}

/*
* 文件名:TimerTest.java
*/

import java.util.Timer;

public class TimerTest
{

public static void main(String[] args)
{
// TODO Auto-generated method stub
Timer timer = new Timer();
//在1秒後執行此任務,每次間隔10秒
timer.schedule(new MyTask(), 1000, 1000*10);
String[] str = {"1","2","3","4","5","6","7","8"};
for(int i=0;i<str.length;i++){
System.out.println(str[i]);
//這只是讓定時任務停止的條件,可以按照自己的情況而定
//if(str[i].equals("7")){
//timer.cancel();
//}
}
}

}


在web.xml添加listener配置
<listener>
<listener-class>MyListener.java</listener-class>
</listener>

如果有不對的地方望指正,謝謝!
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章