SpringMVC拦截器

本文详细对比了拦截器和过滤器在Web开发中的不同点:拦截器基于Java反射,不依赖Servlet容器,主要针对Action请求;过滤器依赖Servlet容器,能处理各种请求。拦截器可访问上下文及值栈,多次调用,可注入业务逻辑;过滤器在容器初始化时调用一次。全局拦截器拦截所有请求,单一拦截器针对指定请求。在多个拦截器的执行顺序上有特定规则。

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

拦截器拦截的是请求。

拦截器和过滤器的区别:

1,所有的拦截器都是基于Java的反射机制,而过滤器是基于函数回调。

2,拦截器不依赖servlet容器,过滤器依赖与servelt容器。

3,拦截只能对action请求起作用,过滤器几乎可以对所有请求起作用。

4,拦截器可以访问action上下文,值栈里的对象,而过滤器不能访问。

5,在action的生命周期中,拦截器可以多次被调用,过滤器只能在容器初始化调用一次。

6,拦截器可以获取IODC容器中的各个bean,过滤器不行,。拦截器可以注入一个service,可以调用业务逻辑。

全局拦截器是,所有请求都拦截,单一拦截器是,指定请求拦截

当有多个拦截器时,我们根据他们配置的先后顺序,然后posthandle和afterCompletion反序来执行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值