SpringMVC的具体执行流程剖析:
如下图解析:
Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。SpringMVC是一种web层的mvc框架,用于替代servlet(处理响应请求,获取表单参数,表单验证等)
下面来一个更加清晰明了的图进行SpringMVC执行过程的讲解:
对于图上的实线是SpringMVC自己实现的,我们看不到
对于图上的虚线需要我们自己去操作实现
1、用户发送请求至前端控制器DispatcherServlet。
2、DispatcherServlet收到请求调用HandlerMapping处理器映射器。
3.HandlerExecution表示具体的Handler,其主要作用是根据url查找控制器
4.HandlerExecution将解析后的信息传DispatcherServlet,如解析控制器映射等
5、HandlerAdapter表示处理器适配器,其按照特定的规则去执行Handler
6、Handler让具体的Controller执行,这里执行Service层调用业务层进行数据处理
7、Controller将具体的执行信息返回给HandlerAdapter,如ModelAndView
8、HandlerAdapter将视图逻辑名或模型传递给DispatcherServlet
9、DispatcherServlet调用视图解析器来解析HandlerAdapter传递的逻辑视图名
10、视图解析器将解析的逻辑视图名传DispatcherServlet
11、DispatcherServlet根据视图解析器解析的视图结果,调用具体的视图
12、最终视图呈现给用户