您的位置:首页 > 编程语言 > Java开发

java TimerTask定时器

2016-12-19 18:00 447 查看


java编写定时器,定时执行某个方法功能

第一步:编写测试类,该类extends TimerTask,重新run()方法,run方法里面就是你要执行的逻辑代码,示例如下:

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.TimerTask;

public class TestNumber1 extends TimerTask{
    private SimpleDateFormat sf=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
@Override
public void run() {
System.out.println("现在的时间是:"+sf.format(new Date()));

                //这里边写你要定时执行的方法
System.out.println("woshihaohaizi------------------dfdfdf \n");
}

第二步:编写一个类,该类实现ServletContextListener接口

import java.util.Timer;

import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;

import org.apache.tools.ant.types.CommandlineJava.SysProperties;

public class TimerManger implements ServletContextListener {
private Timer timer;
public void contextDestroyed(ServletContextEvent arg0) {
System.out.println("程序定时执行任务");
TestNumber1 tn=new TestNumber1();
timer=new Timer("开始执行任务",true);
timer.schedule(tn, 0,5000);
//执行MyTest1中的run方法,t代表TimerTask的子类,0代表延迟0毫秒执行run方法,1000表示每隔一秒执行一次run方法,后面两个参数可根据自己的需求而定义
}

public void contextInitialized(ServletContextEvent arg0) {
    System.out.println("程序定时执行任务结束");
    timer.cancel();

}

第三步:在web.xml中添加如下代码里面填写TimerTaskManager的路径,程序在web容器启动后会初始化加载TimerTaskManager的contextInitialized方法:

<listener>

    <listener-class>

       text.TimerManger

    </listener-class>

</listener>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java定时器