1.创建一个监听>监听服务器是否已启动或关闭,然后来执行想要监听的事件,在这里是监听并操作定时器

package com.demo;

import java.util.Timer;

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

import com.test.MyTest1;
public class TimerTaskManager implements ServletContextListener {
private Timer timer;
@Override
public void contextInitialized(ServletContextEvent sce) {
System.out.println("预警客户余额开始.....................................");
MyTest1 t=new MyTest1();//定时器执行对象
timer=new Timer("开始执行任务",true);//创建定时器
timer.schedule(t, 0, 5000);//执行MyTest1中的run方法,t代表TimerTask的子类,0代表延迟0毫秒执行run方法,1000表示每隔一秒执行一次run方法,后面两个参数可根据自己的需求而定义
}
@Override
public void contextDestroyed(ServletContextEvent sce) {
System.out.println("预警客户余额已结束.....................................");
timer.cancel();
}
}

 

2.监听类创建好之后,要把它交给web.xml管理,这样在服务器启动的时候就可以加载并执行监听类

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<listener>
    <listener-class>com.demo.TimerTaskManager</listener-class>
</listener>
</web-app>

 

3.创建一个类继承TimerTask,并重写run方法

package com.test;

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

posted on 2016-06-13 14:28  撿忔  阅读(113)  评论(0编辑  收藏  举报