Spring HandlerInterceptor的实现原理

Spring HandlerInterceptor的实现原理

Spring HandlerInterceptor的实现原理?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

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方法,直接在里面写需要拦截的内容。

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对亿速云的支持。