拦截器和过滤器区别

最近比较忙,很少有时间上来更新东西,这段时间项目里有遇到个拦截器和过滤器,对他们的概念和区别不是很清晰,这里稍微做个总结。

先分别说下他们的概念。

拦截器:顾名思义,拦截<==>打劫, 想象一下,你放学后蹦蹦跳跳的走在回家的路上,首先你的目的是回家,这相当于一个逻辑。

按照以往,你只要走回去就ok了,但是现在貌似天气不好,下雷了,没办法,你需要去躲雨,然后再执行回家的动作。这一个下雨的过程便叫做拦截。

(某个方法在被访问之前和访问之后做的一些操作就是拦截)。

关于拦截器的配置,可以去网上搜搜,一抓一大把的。

过滤器:选美,长得难看的或者不喜欢的都可以拖出去砍了。过滤器就是在你访问servlet的时候对request、response中的一些参数进行设定和限制,比如过滤叼一些非法的url访问。

说下他们的区别(貌似这在java开发笔试和面试中可能会出现):

1、本质上,拦截器是基于java的反射机制,而过滤器是基于函数的回调。

2、过滤器依赖于servlet容器,而拦截器不依赖。

3、在整个项目运行中,过滤器只启动一次,跟着web项目启动时候调用,而拦截器在action周期内可以被调用很多次。

4、拦截器只针对action起作用,而过滤器对所有的请求都起作用。

5、拦截器可以访问action中的上下文,值栈中的对象,而过滤起不能。

好了,暂时就这些了。。。。学习愉快!!!

关键词:java

文章来自IT部落格,http://www.itbuluoge.com,版权所有,转载请注明出处!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值