Spring拦截器HandlerInterceptor接口代码解析
程序员文章站
2023-12-16 22:22:10
spring的handlermapping支持拦截器,拦截器必须实现handlerinterceptor接口,此接口里面有下面3中方法:
1.prehandle()处理器...
spring的handlermapping支持拦截器,拦截器必须实现handlerinterceptor接口,此接口里面有下面3中方法:
1.prehandle()处理器执行前被调用,方法返回true标识继续调用其他拦截器或者处理器,返回false表示中断流程,后续的拦截器和处理器不再执行。
2.posthandle()处理器执行后,视图执行前调用,此时而已通过modelandview对象对数据模型数据进行处理或对视图进行处理。
3.aftercompletion()整个过程结束后调用,比如性能监控中我们在这里可以记录结束时间并输出消耗的时间,也可以在这里写对资源的清理,但是只有prehandle()返回true时才会执行aftercompletion方法。
public class someinterceptor implements handlerinterceptor{ public boolean prehandle(httpservletrequest req,httpservletresponse resp,object handler)throws exception{ //todo 处理器执行前被调用 return true; } publilc void posthandle(httpservletrequest req,httpservletresponse resp,object handler,modelandview mv)throws exception{ //todo 处理器执行后被调用 } public void aftercompletion(httpservletrequest req,httpservletresponse resp,object handler,exception e)throws exception{ //todo全部执行完成后调用 } }
这个自定义的拦截器实现handlerinterceptor接口就要实现接口里所有的方法,如果只想使用某一种方法,可以继承handlerinterceptoradapter.
拦截器的配置
<mvc:interceptors> <mvc:interceptor> <mvc:mapping path="/org/*"/> <mvc:exclude-mapping path="/login/*"/> <bean class="org.vipcpi.interceprot.someinterceptor"/> </mvc:interceptor> </mvc:interceptors>
总结
以上就是本文关于spring拦截器handlerinterceptor接口代码解析的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!
推荐阅读
-
Spring拦截器HandlerInterceptor接口代码解析
-
Spring实例化bean过程解析及完整代码示例
-
Spring用代码来读取properties文件实例解析
-
Spring+Junit4进行接口测试实例代码
-
mybatis开启spring事务代码解析
-
利用spring的拦截器自定义缓存的实现实例代码
-
Spring+Junit4进行接口测试实例代码
-
Mybaits 源码解析 (十一)----- 设计模式精妙使用:静态代理和动态代理结合使用:@MapperScan将Mapper接口生成代理注入到Spring
-
Spring Boot @Scheduled定时任务代码实例解析
-
Spring 的 Bean 生命周期,11 张高清流程图及代码,深度解析