需要继承ServletContextListener接口。
代码:
package com.my; import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*; public class ServletListener implements ServletContextListener {
public ServletListener() {} // context初始化时激发
public void contextInitialized(ServletContextEvent e) {
System.out.println("Servlet Initialiszed.");
} // context删除时激发
public void contextDestroyed(ServletContextEvent e) {
System.out.println("Servlet Destroyed.");
} // 创建一个 session时激发
public void sessionCreated(HttpSessionEvent e) {
System.out.println("Session Created.");
} // 当一个 session失效时激发
public void sessionDestroyed(HttpSessionEvent e) {
System.out.println("Session destroyed.");
} // 设置 context的属性,它将激发attributeReplaced或attributeAdded方法
public void setContext(HttpSessionEvent e) {
//
} // 增加一个新的属性时激发
public void attributeAdded(ServletContextAttributeEvent e) {
//
} // 删除一个新的属性时激发
public void attributeRemoved(ServletContextAttributeEvent e) {
//
} // 属性被替代时激发
public void attributeReplaced(ServletContextAttributeEvent e) {
//
}
}
web.xml的配置:
<listener>
<listener-class>com.my.ServletListener</listener-class>
</listener>
Servlet的Listener功能contextInitialized(...)相当于.net中的Global.cs中的Application_Start(..)