码迷,mamicode.com
首页 > 其他好文 > 详细

过滤器和拦截器的区别

时间:2018-06-19 22:49:03      阅读:214      评论:0      收藏:0      [点我收藏+]

标签:的区别   字段   字符   动态   -o   span   就会   安全   代理   

拦截器:防止重复提交  日志

过滤器  单点登录,权限控制,sql注入,
    

拦截器和过滤器的区别:


过滤器:

依赖于servlet容器。在实现上基于函数回调,可以对几乎所有请求进行过滤,但是缺点是一个过滤器实例只能在容器初始化时调用一次。

在请求进入容器之后,还未进入Servlet之前进行预处理;在请求结束返回给前端之前进行后期处理。处理完成后,它会交给下一个过滤器处理,直到请求发送到目标为止。

SQL注入、权限配置、单点登录,过滤非法字符


--------------------

拦截器:

在AOP(Aspect-Oriented Programming)中用于在某个方法或字段被访问之前,进行拦截然后在之前或之后加入某些操作。比如日志,安全等。
  
拦截器链,就是将拦截器按一定的顺序联结成一条链。在访问被拦截的方法或字段时,拦截器链中的拦截器就会按其之前定义的顺序被调用。
一般拦截器方法都是通过动态代理的方式实现。

-------------------

区别:

①拦截器是基于动态代理的,而过滤器是基于函数回调。
②拦截器不依赖于servlet容器,通过动态代理实现,过滤器依赖于servlet容器。
③拦截器可以在方法前后,异常前后等调用,而过滤器只能在请求前和请求后各调用一次。
④拦截器可以利用依赖注入,因此在Spring框架程序中,优先拦截器。

----------------------

个人理解是:拦截器是方法级别的,过滤器是应用级别的

-------------------


参考:
https://www.cnblogs.com/xzwblog/p/6832509.html

过滤器和拦截器的区别

标签:的区别   字段   字符   动态   -o   span   就会   安全   代理   

原文地址:https://www.cnblogs.com/haiqin/p/9201283.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!