- 过滤器的概念:
Servlet 2.3中定义的,能够对Servlet容器的请求和响应对象进行检查和修改。
它本身不生成请求和响应对象,只提供过滤作用。
过滤器在Servlet被调用之前检查Request对象,修改Request Header和Request内容;在Servlet被调用之后检查Response对象,修改Response Header和Response内容。
过滤器负责过滤的Web组件可以是 Servlet、JSP、HTML文件。 - init方法参数FilterConfig能够获得web.xml里filter节点下的一些参数,同时也能获得ServletContext对象。
- Listener是Servlet的监听器,可以监听客户端的请求、服务器端的操作等。通过监听器可以自动激发一些操作,比如监听在线的用户的数量。
- 当增加一个HttpSession时,就激发sessionCreated(HttpSessionEvent se)方法,可以给在线人数加1.
- 常用的监听器接口:
- 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的属性操作,比如增加、删除、修改属性。