第一步:创建一个任务监听类,实现ServletContextListener 接口
import java.util.Calendar;
import java.util.Timer;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import javax.servlet.http.HttpServlet;
/**
* @author dym
*
*/
public class ScheduleTaskListener extends HttpServlet implements ServletContextListener{
private static final long serialVersionUID = 7065236947173387428L;
//设置启动时间为2点45;
private static final int hours = 14;
private static final int minutes = 45;
private static final int seconds = 0;
//设置间隔时间为10秒;
private static final long interval = 10 * 1000;
//定时器;
private static Timer timer=new Timer();
public void contextDestroyed(ServletContextEvent sce) {
System.out.println("ScheduleTaskListener>>stop");
timer.cancel();
}
public void contextInitialized(ServletContextEvent sce) {
System.out.println("-------定时工作开启");
System.out.println("ScheduleTaskListener>>start");
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY, hours);
calendar.set(Calendar.MINUTE, minutes);
calendar.set(Calendar.SECOND, seconds);
timer.schedule(new ScheduleTask(),calendar.getTime(),interval);
}
}
第二步:创建一个时间任务类
import java.util.TimerTask;
public class ScheduleTask extends TimerTask {
System.out.println("ScheduleTaskListener is running!");
}
}
web.xml里的配置
<listener>
<listener-class>
tax.lite.wf.ws.nsfw.task.ScheduleTaskListener
</listener-class>
</listener>