评论区看到一个很重要的点,Controller处理完数据或者渲染页面时后会先去执行拦截器中afterCompletion方法,再返回页面或数据。
查看springWeb源码可以看到
<servlet-name>dispatcher</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
里面有一个 processDispatchResult 方法,其中这块代码可以看到处理完modelView后,走拦截器的afterCompletion方法
if (!WebAsyncUtils.getAsyncManager(request).isConcurrentHandlingStarted()) { if (mappedHandler != null) { mappedHandler.triggerAfterCompletion(request, response, (Exception)null); } }
Sign in to make a reply
Loading...
评论区看到一个很重要的点,Controller处理完数据或者渲染页面时后会先去执行拦截器中afterCompletion方法,再返回页面或数据。
查看springWeb源码可以看到
里面有一个 processDispatchResult 方法,其中这块代码可以看到处理完modelView后,走拦截器的afterCompletion方法