jsp/servlet定時監控的兩種實現方式 (2)

第二種方法

第一步,首先創建一個具體執行任務的類,繼承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>

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章