gdufo

 

Filter与interceptor的区别

转:http://zxfflying.spaces.live.com/blog/cns!e2d4979e975b3e4b!153.entry


前几天有人跟我说interceptorfilter差不多,这个当时还真把我蒙住了,我知道有区别,但没想清楚,这几天整理了一下。

首先从表现形式上来说,两者确实很相似,同样可以在你写的jspservlet代码的前后加入其它的动作,但是两者是有本质区别的。

1、  filter基于回调函数,我们需要实现的filter接口中doFilter方法就是回调函数,而interceptor则基于java本身的反射机制,如果对这种形式不了解,可以去看看java是如何实现动态代理的,这是aop的基础。这是两者最本质的区别。

2、  filter是依赖于servlet容器的,即只能在servlet容器中执行,很显然没有servlet容器就无法来回调doFilter方法。而interceptorservlet容器无关。



posted on 2008-08-18 19:51 gdufo 阅读(2183) 评论(0)  编辑  收藏 所属分类: Struts2

导航

统计

常用链接

留言簿(6)

随笔分类

随笔档案

文章分类

文章档案

收藏夹

Hibernate

友情链接

搜索

最新评论

阅读排行榜

评论排行榜