Listener如其名所意,它是一个事件监听器.在以上的两个包里包含ServletContextListener ServletRequestAttributeListener
ServletRequestListener HttpSessionActivationListener HttpSessionAttributeListener HttpSessionBindingListener 六种监听接口,只需要实现该接口的方法就可以监听对应对象的事件.例如ServeletContextListener监听的对象就是ServeletContext,监听的事件包括contextInitialized和contextDestroyed,ContextInitialized是在ServletContext的其他资源加载之前触发的事件.而contextDestoryed则是ServletContext被Destoryed的事件.部署这些Listener只要在Web.xml里面配置即可.如下所示:
- <listener>
- <listener-class>
- com.test.MyServletContextListener
- listener-class>
- listener>
- <listener>
- <listener-class>com.test.MySessionListenerlistener-class>
- listener>
类的代码如下:
- package com.test;
- import java.util.Date;
- import javax.servlet.http.HttpSessionListener;
- import javax.servlet.http.HttpSessionEvent;
- public class MySessionListener implements HttpSessionListener{
- public void sessionCreated(HttpSessionEvent event){
- System.out.println(new Date());
- System.out.println("session has been created");
- }
- public void sessionDestroyed(HttpSessionEvent event){
- System.out.println("session has been closed");
- }
- }
- package com.test;
- import javax.servlet.ServletContextListener;
- import javax.servlet.ServletContextEvent;
- public class MyServletContextListener implements ServletContextListener{
- public void contextInitialized(ServletContextEvent sce){
- System.out.println("...........ContextInitialized.............");
- }
- public void contextDestroyed(ServletContextEvent sce){
- }
- }
java 代码
java 代码
xml 代码