作用
在JavaWeb中Listener是Servlet规范定义的一种特殊类,主要用于监听3个作用域的创建、销毁,以及其属性变更
Servlet中的三个作用域分别为:
HttpServletRequest
HttpSession
ServletContext
注意pageContext表示jsp整个页面,不属于Servlet中的作用域
应用场景:
统计在线人数
页面访问量
应用启动时做一些初始化工作等等
创建监听器
直接new--->Web listener:
package listener;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import javax.servlet.annotation.WebListener;
import javax.servlet.http.HttpSessionAttributeListener;
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener;
import javax.servlet.http.HttpSessionBindingEvent;
@WebListener()
public class MyListener implements ServletContextListener,
HttpSessionListener, HttpSessionAttributeListener {
// Public constructor is required by servlet spec
public MyListener() {
}
// -------------------------------------------------------
// ServletContextListener implementation
// -------------------------------------------------------
public void contextInitialized(ServletContextEvent sce) {
/* This method is called when the servlet context is
initialized(when the Web application is deployed).
You can initialize servlet context related data here.
*/
}
public void contextDestroyed(ServletContextEvent sce) {
/* This method i