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>

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