首页 > 其他 > 详细

过滤器(filter)和拦截器(interceptor)区别

时间:2016-06-16 02:01:24      阅读:242      评论:0      收藏:0      [点我收藏+]

过滤器(filter)和拦截器(interceptor)区别

一、filter基于filter接口中的doFilter回调函数,interceptor则基于Java本身的反射机制; 二、filter是依赖于servlet容器的,没有servlet容器就无法回调doFilter方法,而interceptor与servlet无关; 三、filter的过滤范围比interceptor大,filter除了过滤请求外通过通配符可以保护页面、图片、文件等,而interceptor只能过滤请求,只对action起作用,在action之前开始,在action完成后结束(如被拦截,不执行action); 四、filter的过滤一般在加载的时候在init方法声明,而interceptor可以通过在xml声明是guest请求还是user请求来辨别是否过滤; 五、interceptor可以访问action上下文、值栈里的对象,而filter不能; 六、在action的生命周期中,拦截器可以被多次调用,而过滤器只能在容器初始化时被调用一次

过滤器(filter)和拦截器(interceptor)区别

原文:http://www.blogjava.net/youngturk/archive/2016/06/15/430920.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!