Filter与intercepter的区别小结

232 阅读1分钟

filter

  1. 过滤器位于客户端和web应用程序之间,用于检查和修改两者之间流过的请求和响应。
  2. 请求到达servlet/JSP,过滤器截获请求
  3. 在响应送给客户端前,过滤器截获响应
  4. 在web.xml中配置过滤器,形成过滤器链,过滤顺序为映射顺序。
  5. 最先截获客户端请求的过滤器最后截获servlet/jsp响应
  6. 自定义过滤器实现Filter接口
  7. 重写init() dofilter() destroy()方法

拦截器interceptor

  1. 实现HandlerInteceptor接口或集成HandlerIntercepterAdapter抽象类
  2. dispatcherServlet处理请求,构造一个Excecution Chain,既包含可能多个拦截器和真正处理请求的Handler,也为interceptor链式调用
  3. preHandel postHandle:在controller方法调用之后执行,对modelandview进行操作
  4. afterCompletion:在整个请求结束后,渲染对应视图之后执行,且需prehandle返回true
  5. 拦截器作用于适配器执行处理器之前,以及之后 转自: blog.csdn.net/u012410733/…

www.cnblogs.com/he-px/p/713…