高级会员
- 威望
- 371
- 贡献
- 478
- 热心值
- 0
- 金币
- 19
- 注册时间
- 2020-3-29
|
29. Spring拦截器和过滤器的区别?
• 本质的区别:Filter过滤器是Servlet定义的规范,是Servlet容器支持的。而拦截器是Spring框架定义的,被Spring所支持。
• 使用范围不同:Filter过滤器只能用户Web程序中,而拦截器既可以在Web程序中使用也可以在Application等程序中使用。
• 功能深度不同:Filter过滤器只能在Servlet的前后起作用,而拦截器可以深入到方法的前后进行拦截,所以拦截器的功能更加强大,并且还可以使用Spring中任何一个资源和对象。
• 触发时机不同:过滤器是在请求进入Web容器后,但请求进入servlet之前进行预处理的,等到Servlet处理完后返回。
30. 什么时候使用过滤器,又什么时候使用拦截器呢?
• 如果是非spring项目,那么拦截器不能用,只能使用过滤器。
• 如果是处理controller前后,既可以使用拦截器也可以使用过滤器。
如果是处理dispaterServlet前后,只能使用过滤器。
|
|