标签:
一:Filter介绍
Filter可认为是Servlet的一种“变种”,它主要用于对用户请求(HttpServletRequest)进行预处理,也可以对服务器响应(HttpServletResponse)进行后处理,是个典型的处理链。它与Servlet的区别在于:它不能直接向用户生成响应。完整的流程是:Filter对用户请求进行预处理,接着将请求交给Servlet进行处理并生成响应,最后Filter再对服务器响应进行后处理。
二:Filter的几个用处
在HttpServletRequest到达Servlet之前,拦截客户的HttpServletRequest。
根据需要检查HttpServletRequest,也可以修改HttpServletRequest头和数据。
在HttpServletResponse到达客户端之前,拦截HttpServletResponse。
根据需要检查HttpServletResponse,也可以修改HttpServletResponse头和数据。
三:Filter的种类
用户授权的Filter:Filter负责检查用户请求,根据请求过滤用户非法请求。
日志Filter:详细记录某些特殊的用户请求。
负责解码的Filter:包括对非标准编码的请求解码。
Filter可拦截多个请求或响应;一个请求或响应也可被多个请求拦截。
四:Filter的应用实例
创建一个Filter只需要两个步骤:1.创建Filter处理类(如:MyFiletr)实现javax.servlet.Filter接口;2.web.xml中配置Filter
4.1.简单的记录日志的Filter,这个Filter负责拦截所有的用户请求,并将请求的信息记录在日志中。
标签:
原文地址:http://www.cnblogs.com/vanl/p/5742501.html