Spring中Interceptor和Filter区别

本文详细对比了Interceptor(拦截器)与Filter的功能与使用场景。Interceptor基于Java反射机制,而Filter基于函数回调,前者在灵活性上更胜一筹,不仅能在请求前后执行,还能深入到方法异常处理等阶段。此外,文章还探讨了两者在调用次数、规范依赖、访问范围及深度上的差异。

本质区别

Interceptor:基于Java的反射机制

filter:基于函数回调。

从灵活性上说拦截器功能更强大些,Filter能做的事情,Interceptor都能做,而且可以在请求前,请求后执行,比较灵活。

其他区别

 filterInterceptor
调用次数只能在容器初始化时调用一次可以被多次调用
规范依赖于Servlet容器依赖于Spring容器
访问范围Filter不能访问Action的上下文,值栈里的对象Action的上下文,值栈里的对象
深度Filter在只在Servlet前后起作用拦截器能够深入到方法前后、异常抛出前后等
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值