Spring MVC 处理一个请求的流程
一个请求从客户端发出到达服务器,然后被处理的整个过程其实是非常复杂的。本博客主要介绍请求到达服务器被核心组件DispatcherServlet处理的整理流程。FrameworkServlet重写了HttpServlet的service方法,这个service方法后面又调用了FrameworkServlet的processRequest()方法,processRequest()调用了DispatcherServlet的doService()方法,最后调用到DispatcherServlet的doDispatcher()方法。发现根据代码不太能把这个流程说清楚。而且整个流程很长,代码很多,我就不贴代码了。上面的HandlerMethod和HandlerInterceptor组件分别对应我们Controller中的方法和拦截器。拦截器会在HandlerMethod方法执行之前执行。当HandlerAdapter组件执行完成之后会得到一个ModleAndView组件,这个组件代表视图模型。
用户评论