首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Spring MVC中拦截器和过滤器的区别

Spring MVC中拦截器和过滤器的区别
EN

Stack Overflow用户
提问于 2016-03-08 07:51:57
回答 4查看 135.7K关注 0票数 142

我对FilterInterceptor的用途有点困惑。

根据我在文档中的理解,Interceptor是在请求之间运行的。另一方面,Filter在渲染视图之前运行,但在控制器渲染响应之后运行。

那么拦截器中的postHandle()和过滤器中的doFilter()的区别在哪里呢?

应该在哪些用例中使用它的最佳实践是什么?在这张图片中,Filters和Interceptors在哪里工作?

EN

Stack Overflow用户

发布于 2022-02-22 20:33:09

来自baeldung

筛选器在请求到达DispatcherServlet之前对其进行拦截,这使得它们非常适合粗粒度任务,例如:

代码语言:javascript
运行
复制
Authentication
Logging and auditing
Image and data compression
Any functionality we want to be decoupled from Spring MVC

另一方面,HandlerIntercepors截获DispatcherServlet和我们的控制器之间的请求。这是在Spring MVC框架中完成的,提供对处理程序和ModelAndView对象的访问。这减少了重复,并允许实现更细粒度的功能,例如:

代码语言:javascript
运行
复制
Handling cross-cutting concerns such as application logging
Detailed authorization checks
Manipulating the Spring context or model
票数 0
EN
查看全部 4 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35856454

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档