Spring MVC的执行流程

MVC模式是模型(Model)、视图(View)、控制器(Controller)的简写,其核心思想是通过将请求处理控制、业务逻辑、数据封装、数据显示等流程节点分离的思想来组织代码。

Spring MVC的执行流程_第1张图片 所以,MVC是一种设计模式,而Spring MVC是一款基于MVC设计模式思想实现的MVC框架,属于Spring技术栈的一部分。Spring MVC可以帮助我们进行更简介的Web层开发,并且它天生与Spring框架集成,更有利于架构的设计与搭建。

那么Spring MVC的执行流程是什么呢?如图所示就是Spring MVC的执行流程 

Spring MVC的执行流程_第2张图片

首先在上图中,DispatcherServlet是MVC中的请求控制器,它其实就相当于一个酒店的大堂经理,它的主要作用在于:判断用户发送的请求路径符不符合要求 

Spring MVC的执行流程为:

(1)首先用户发送请求,然后请求控制器(DispatcherServlet)拦截用户发送的请求,判断用户的请求路径符不符合要求。

(2)符合要求就会将用户的请求路径交给一个处理器映射器(HandlerMapping)的组件,通过映射的方式查看程序中是否有一个控制器(Handler)可以来处理请求,并将这个结果返回给请求控制器。

(3)这个请求控制器就会带着刚刚返回的结果再一次交给一个叫做处理器适配器(HandlerAdapter)的组件(这个适配器就可以执行不同的控制器)。

(4)即处理器执行控制器进入方法处理请求,等于到这一步的时候才真正拿到要处理的用户的请求了,经过控制器调动业务,执行请求。

(5)处理器适配器返回一个ModelAndView模型视图对象给请求控制器,ModelAndView中包含了数据模型以及相应的视图信息,Model是返回的数据对象,View是View视图的逻辑名称。

(6)ViewResolver会根据逻辑View名称查找并解析实际的View视图文件。

(7)并根据请求控制器返回的Model数据模型传给View视图文件,并执行渲染执行,产生响应结果。

(8)最终将这个结果页面响应给控制器,然后再响应给用户。

你可能感兴趣的:(spring,mvc,java)