Springmvc处理器拦截器类似于过滤器Filter
作用:对处理器(web层)进行预处理和后处理
- 过滤器是servlet的一部分,任何javaweb工程都可以使用,而拦截器是springmvc框架自己的,只有springmvc框架的工程才可以使用
- 过滤器在url-pattern中配置/* 可以对所有要访问的资源进行拦截,拦截器只会拦截访问控制器的方法,如果是静态资源,是不会进行拦截的
- 拦截器不依赖于servlet容器,而过滤器依赖于servlet容器
- 拦截器是基于Java的反射机制,使用代理模式,而过滤器是函数回调
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23/* .自定义拦截器 */ public class MyInterceptor implements HandlerInterceptor { /* Controller方法执行前处理 preHandle:预处理 return false:不放行 */ @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { return false; } //Controller方法执行后处理,跳转页面之前 @Override public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception { } //页面跳转执行后,执行 @Override public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception { } }
复制代码
1
2
3
4
5
6
7
8
9
10
11
12<mvc:interceptors> <!--配置拦截器--> <mvc:interceptor> <!--要拦截的具体方法--> <mvc:mapping path="/**"/> <!--不要拦截的方法--> <!--<mvc:exclude-mapping path=""/>--> <!--配置拦截器对象--> <bean class="com.luo.panda.tools.MyInterceptor"/> </mvc:interceptor> </mvc:interceptors>
最后
以上就是安详白猫最近收集整理的关于springmvc的处理器拦截器的全部内容,更多相关springmvc内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复