Spring 拦截器
Spring的HandlerMapping 处理器支持拦截器应用。当需要为某些请求提供特殊功能时,例如对用户进行身份认证,或者记录日志,拦截器非常适用。
Spring中 定义一个拦截器必须实现HandlerInterceptor接口,这个接口
public class MyInterceptor implements HandlerInterceptor { public void afterCompletion(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, Exception arg3) throws Exception { // 整个请求处理完毕后调用,如性能监控中我们可以在此记录结束时间并输出消耗时间,还可以进行一些资源清理。 // 只有preHandle返回true时才会执行afterCompletion方法 } public void postHandle(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, ModelAndView arg3) throws Exception { // 处理器执行后,视图处理前调用。此时可以通过modelAndView对象对模型进行处理或对视图进行处理 } public boolean preHandle(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2) throws Exception { // 处理器执行前被调用。方法返回true表示会继续调用其他拦截器和处理器 // 返回false表示中断流程,不会执行后续拦截器和处理器 return false; } }
注意:自定义拦截器时,实现HandlerInterceptor接口需要实现以上3个方法,如果只需要某一个方法可以继承HandlerInterceptorAdapter.
定义完拦截器后,接下来就是在配置文件中对拦截器进行配置。
<mvc:interceptors> <mvc:interceptor> <mvc:mapping path="/demo/*" /><!--要进行拦截的请求--> <mvc:exclude-mapping path="/login/*" /><!--不需要进行拦截的请求--> <bean class="com.tarena.web.AccessInterceptor" /> </mvc:interceptor> <mvc:interceptor> <mvc:mapping path="/**" /> <mvc:exclude-mapping path="/login/*" /> <bean class="com.tarena.web.DemoInterceptor" /> </mvc:interceptor> </mvc:interceptors>
相关推荐
SpringMVC——demo
数据绑定流程: 1、框架把ServletRequest对象和请求参数传递给DataBinder ; 2、DataBinder 首先调用Spring Web环境中的ConversionService组件,...最终SpringMVC框架会把BindingResult中的数据,分别赋给相应的处理方法。
fengchao111-springmvc-interceptor-master.zip
当发起请求时被前置的控制器拦截到请求, 根据请求参数生成代理请求, 找到对应的实际控制器, ...控制器使用模型与视图渲染视图结果, 将结果返回给中心控制器,再将结果返回给请求者。
spring+springmvc+Interceptor+jwt+redis实现sso单点登录.zip
NULL 博文链接:https://panyongzheng.iteye.com/blog/2084629
本篇文章主要介绍了学习SpringMVC——国际化+上传+下载,小编觉得挺不错的,现在分享给大家,也给大家做个参考。
本篇文章主要介绍了SpringMVC——如何获取请求参数详解,详细的介绍了每种参数注解的用法。具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
主要介绍了详解SpringMVC——接收请求参数和页面传参,小编觉得挺不错的,现在分享给大家,也给大家做个参考。
主要介绍了浅谈SpringMVC中Interceptor和Filter区别,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
springmvc中关于拦截器的使用
目录结构 四、配置一个错误的方法 package edu.xiao;...import edu.xiao.exception.SystemExc;...import org.springframework.stereotype.Controller;...import org.springframework.web.bind.annotation....
基于注解的springMVC的HelloWorld
SpringMVC学习(一)——SpringMVC入门小程序
SSM 框架整合教程:三、SpringMVC——尚硅谷学习笔记 2022 年
使用注解SpringMVC从页面导出Excel和word文档的使用的jar包——使用ExportExcel工具类
SpringMVC数据验证——注册用户格式的验证实例,具体过程和效果看博文http://blog.csdn.net/evankaka/article/details/45789283
SpringMVC学习(十二)——SpringMVC中的拦截器