第二种方法
第一步,首先创建一个具体执行任务的类,继承TimerTask
package com.zytk;
import java.util.Date;
import java.util.TimerTask;
public class theTask extends TimerTask
{
@Override
public void run() //重载run方法
{
System.out.println(new Date()); //执行具体任务
}
}
第二步,创建一个Servlet容器监听类,调用上面的类执行定时任务
package com.zytk;
import java.util.Timer;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
public class TaskListener implements ServletContextListener
{
private Timer timer = null;
//@Override
public void contextInitialized(ServletContextEvent event)
{
event.getServletContext().log("starting log...");
System.out.println("Starting...");
timer = new Timer(true);
timer.schedule(new theTask(), 0, 10* 1000);
}
//@Override
public void contextDestroyed(ServletContextEvent event)
{
System.out.println("stopping...");
timer.cancel();
event.getServletContext().log("stopping log...");
System.out.println("stopping successfully.");
}
}
第三步,配置web.xml文件中的对应监听类内容:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<listener>
<listener-class>com.zytk.TaskListener</listener-class>
</listener>
</web-app>