ServletContextListener的用法

 

這個J2EE小提示闡述了ServletContextListener的用法。這個事件類作爲Web應用服務的一部分,處理Web應用的 servlet上下文(context)的變化的通知。這可以解釋爲,好像有個人在服務器旁不斷地通知我們服務器在發生什麼事件。那當然需要監聽者了。因此,在通知上下文(context)初始化和銷燬的時候,ServletContextListner非常有用。

import javax.servlet.ServletContextListener;

import javax.servlet.ServletContextEvent;
import javax.servlet.*;
public class MyListener implements ServletContextListener {
private ServletContext context = null;

 public void contextDestroyed(ServletContextEvent event){
  //Output a simple message to the server's console
  System.out.println("The Simple Web App. Has Been Removed");
  this.context = null;
}
 // 這個方法在Web應用服務做好接受請求的時候被調用。
public void contextInitialized(ServletContextEvent event){
  this.context = event.getServletContext();
  //Output a simple message to the server's console
  System.out.println("The Simple Web App. Is Ready");
}

}


<web-app>
<listener>
  <listener-class>
   com.listeners.MyContextListener
  </listener-class>
</listener>
<servlet/>
<servlet-mapping/>

</web-app> 

ServletContextListener接口有兩方需要實現的方法:
contextInitialized()
contextDestroyed();
Listener,譯爲監聽者.顧名思義,它會監聽Servlet容器,當應用開始的時候它會調用contextInitialized()方法;
當應用關閉的時候,它同樣會調用contextDestroyed()方法.
我們可以利用這個特性初始化一些信息,當然我們也可以利用Servlet類init()方法,並在配置文件中讓它啓動應用的時候
就執行,並且在關閉的時候執行destroy()方法.但是繼承此接口應該更符合容器的應用.

發佈了22 篇原創文章 · 獲贊 10 · 訪問量 16萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章