更新时间:2022-10-25 10:35:39 来源:极悦 浏览927次
1.拦截器和过滤器体现AOP思想,实现方法的增强,可以拦截请求的方法。
2.拦截器和Filter过滤器可以通过Order Annotation设置执行顺序
1.Filter属于Servlet Level,Interceptors属于Spring Level
Filter是在javax.servlet包中定义的,依赖于网络容器,所以只能在web项目中使用。
拦截器是在 SpringMVC 中实现的,归根结底,最底层的拦截器是一个 Spring Components ,由 Spring Container 管理。
2.过滤器和拦截器的执行顺序不同:
这是一张显示过滤器和拦截器执行顺序的图片
首先,当请求进入 Servlet 之前,过滤器的 doFilter 方法进行过滤,
进入 Servlet 容器后,执行 Controller 的 Before 方法,拦截器的 preHandle 方法进行拦截,
执行Controller的After方法,渲染视图之前,拦截器的postHandle方法进行拦截,
请求后,执行拦截器 postHandle 方法。
3.基于过滤器的函数回调如何实现,拦截器是基于Java的反射机制实现的。
0基础 0学费 15天面授
Java就业班有基础 直达就业
业余时间 高薪转行
Java在职加薪班工作1~3年,加薪神器
工作3~5年,晋升架构
提交申请后,顾问老师会电话与您沟通安排学习