1.过滤器基本概念
一种可以拦截请求和响应,并且对请求作出一些修改和判断功能的可插拔的组件.
2.编写过滤器:
案例:过滤评论中的敏感字词
a.编写一个实现Filter接口的类.
public void doFilter(ServletRequest arg0, ServletResponse arg1, FilterChain arg2)
throws IOException, ServletException {
HttpServletRequest request = (HttpServletRequest)arg0;
HttpServletResponse response = (HttpServletResponse)arg1;
arg2.doFilter(arg0, arg1);
}
b.注册该组件.(配置web.xml)
<filter>
<filter-name>filter</filter-name>
<filter-class>com.web.CommentFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>filter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
如果过滤路径有多个过滤器,则先执行web.xml上面配置的.
3.监听器的概念:
监听器是规范中定义的一种特殊的组件,用来监听Servlet容器产生的事件并进行相应的处理.
监听的事件:
生命周期相关的事件;
容器创建或者销毁request,response或者ServletContext时产生的事件.
绑定数据相关的事件.
4.监听器的使用
a.编写一个Java类,依据监听的事件类型选择实现相应的监听器接口;
b.在监听器接口方法中,实现相应的监听处理逻辑;
c.在web.xml文件中注册该监听器.