Filter和拦截器

本文探讨了Struts2框架中的拦截器概念及其与Filter的区别和联系。拦截器类似于Filter,但更专注于Action处理,能够访问更多的上下文信息。文章还介绍了Struts2中的拦截器链机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 拦截器:

   在Struts2中出现的概念。

        Struts2与Struts1相比,去掉了很多概念:ForwardAction,ActionMapping,ActionForm,Action的继承也变的可有可无(如果不声明拦截器等Struts2中特有的东西)。

        但是去掉了,不代表没有,只是在使用的时候,不会看到这些类的存在。若是你细细对比,在Struts2中你会找到他们的身影的。

        但是Struts2多了拦截器的概念,这个概念类似于Filter,Struts2的架构其实就是基于拦截器的。

        在Struts2中,还有一个概念:拦截器链(interceptor-stack)。有关于上次文件的、多选、静态参数、国际化等等好多个默认拦截器,当然也可以自己手动写拦截器。

Filter和拦截器有什么区别和联系?

        二者都是运用了AOP的思想,都让系统变的可配置。

        1.拦截器是基于java的反射机制,而过滤器是基于函数毁掉。

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

        3.拦截器只能对action起作用,而过滤器可以对几乎所有的请求起作用(可以保护资源)

        4.拦截器可以访问action上下文,、堆栈里面的对象,而过滤器不可以。

        执行顺序:过滤前-拦截钱-Action处理-拦截后-过滤后。

转载于:https://www.cnblogs.com/snow1314/p/5255588.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值