Java Web基础回顾 —Filter&Listener

  1. 过滤器的概念:
    Servlet 2.3中定义的,能够对Servlet容器的请求和响应对象进行检查和修改。
    它本身不生成请求和响应对象,只提供过滤作用。
    过滤器在Servlet被调用之前检查Request对象,修改Request Header和Request内容;在Servlet被调用之后检查Response对象,修改Response Header和Response内容。
    过滤器负责过滤的Web组件可以是 Servlet、JSP、HTML文件。
  2. init方法参数FilterConfig能够获得web.xml里filter节点下的一些参数,同时也能获得ServletContext对象。
  3. Listener是Servlet的监听器,可以监听客户端的请求、服务器端的操作等。通过监听器可以自动激发一些操作,比如监听在线的用户的数量。
  4. 当增加一个HttpSession时,就激发sessionCreated(HttpSessionEvent se)方法,可以给在线人数加1.
  5. 常用的监听器接口:
    • ServletContextAttributeListener监听对ServletContext属性操作,比如增加、删除、修改属性。
    • ServletContextListener监听ServletContext,当创建ServletContext时,激发contextInitialized(ServletContextEvent sce) 方法,当销毁ServletContext时,激发contextDestroy(ServletContextEvent sce)方法。
    • HttpSessionListener监听HttpSession的操作,当创建一个Session时,激发session Created(HttpSessionEvent se)方法;当销毁一个Session时,激发sessionDestroy(HttpSessionEvent se)方法。
    • HttpSessionAttributeListener监听HttpSession的属性操作,比如增加、删除、修改属性。
原文地址:https://www.cnblogs.com/nextStep/p/6694764.html