过滤器与拦截器

Posted 程是成功的乘

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了过滤器与拦截器相关的知识,希望对你有一定的参考价值。

一、过滤器与拦截器的区别:
    过滤器可以简单的理解为“取你所想取”,过滤器关注的是web请求;拦截器可以简单的理解为“拒你所想拒”,拦截器关注的是方法调用,比如拦截敏感词汇。
1,拦截器是基于java反射机制来实现的,而过滤器是基于函数回调来实现的。(有人说,拦截器是基于动态代理来实现的)
2,拦截器不依赖servlet容器,过滤器依赖于servlet容器。
3,拦截器只对Action起作用,过滤器可以对所有请求起作用。
4,拦截器可以访问Action上下文和值栈中的对象,过滤器不能。
5,在Action的生命周期中,拦截器可以多次调用,而过滤器只能在容器初始化时调用一次。

 

二、实现自定义拦截器:

1、创建我们自己的拦截器类并实现 HandlerInterceptor 接口。 
2、创建一个Java类继承WebMvcConfigurerAdapter,并重写 addInterceptors 方法。 
2、实例化我们自定义的拦截器,然后将对像手动添加到拦截器链中(在addInterceptors方法中添加)。 

 

以上是关于过滤器与拦截器的主要内容,如果未能解决你的问题,请参考以下文章

拦截器与过滤器

过滤器与拦截器

拦截器与过滤器的区别

过滤器与拦截器之间的关系与区别

过滤器与拦截器的区别

拦截器与过滤器的区别 :