【SpringMVC】拦截器和过滤器之间的区别

过滤器

拦截器

调用机制

基于函数的回调

基于反射机制(动态代理)

依赖关系

依赖Servlet容器

不依赖Servlet容器

作用范围

对几乎所有的请求起作用

只对action请求起作用

访问范围

不能访问action上下文、栈

可以访问action上下文、栈

action生命周期

中的调用次数

只能在容器初始化时被调用一次

可以被多次调用

与IOC容器关系

不可以访问IOC容器中的bean

可以访问IOC容器中的bean

触发时机

进入Servlet之前和出Servlet之后过滤

进入Servlet之后,进入Controller之前进行拦截

应用场景

字符编码;

过滤URL、文字、静态资源;

日志记录;

权限过滤;

你可能感兴趣的:(面试题,servlet)