过滤器(Interceptor)和拦截器(Filter)的区别:

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

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

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

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

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

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

7.拦截器需要在spring配置文件中配置,过滤器只需要在web.xml中配置。

过滤器(Interceptor)和拦截器(Filter)的区别: