Spring HandlerInterceptor实现原理代码解析

2025-11-07 0 856

HandlerInterceptor 在这里看到这个HandlerExecutionChain对interceptor的调用,在这里深入看一下。

HandlerExecutionChain 就是一个类,绑定了Handler( 对应的Controller) 和 Interceptors , 所以作用就是对Controller前后执行interceptors, 类似Filter

几个问题:

1. interceptor调用位置?

Spring HandlerInterceptor实现原理代码解析

1 2 3 对应调用 handlerInterceptor preHandle, postHandle, afterCompletion

先看第一行的:

Spring HandlerInterceptor实现原理代码解析

进到对应的interceptor实现类,preHandler返回true, 如果返回false, 就会到DispatcherServlet就直接return了。

Spring HandlerInterceptor实现原理代码解析

看第二行没有特别的:

Spring HandlerInterceptor实现原理代码解析

由于它只重写了preHandle

Spring HandlerInterceptor实现原理代码解析

所以走到它父类的postHandle了。方法是空的。

Spring HandlerInterceptor实现原理代码解析

第三行和第二行一样不赘述了。

以上就是执行位置。

所以如果实现HandlerInterceptor , preHandle 应该返回true, 具体要拦截的内容写在return true之前就行。 postHandle和afterCompletion 都是void方法,直接在里面写需要拦截的内容。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持码农网。

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

遇见资源网 后端开发 Spring HandlerInterceptor实现原理代码解析 https://www.ox520.com/5251.html

常见问题

相关文章

猜你喜欢
发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务