作用:
1.过滤字符
2.在HttpServletRequest到达Servlet之前,拦截客户的HttpServletRequest。
根据需要检查HttpServletRequest,也可以修改HttpServletRequest头和数据。
在HttpServletResponse到达客户端之前,拦截HttpServletResponse。
根据需要检查HttpServletResponse,也可以修改HttpServletResponse头和数据
3.记录日志
用法
1.比较原始的一种方法是定义一个MyFilter实现javax.servlet.Filter接口
2.另一种方法的自定义Filter,继承springframework.web.filter.OncePerRequestFilter,可以对同一个请求,只经过一次过滤,当然也可以继承spring 内置的功能性filter,这些filter已经继承了OncePerRequestFilter。
概述
Filter需要在web.xml中配置,依赖于Servlet.
1.一般filter都是一个链,web.xml 里面配置了几个就有几个。 web服务器根据Filter在web.xml文件中的注册顺序,决定先调用哪个Filter. 一个一个的连在一起 request -> filter1 -> filter2 ->filter3 -> …. -> request resource.
2.chain.doFilter将请求转发给过滤器链下一个filter , 如果没有filter那就是你请求的资源