天天看点

SpringMvc执行原理

SpringMvc执行原理

1.<code>DispatcherServlet</code> 表示前端控制器 是整个SpringMvc的控制中心 用户发出请求 DispatcherServlet接受请求并拦截

假设请求的url http://localhost:8080/SpringMVC/hello

url拆分成三部分

http://localhost:8080 服务器域名

SpringMVC部署在服务器上的web站点

hello表示控制器

url表示为 请求位于服务器localhost:8080上的SpringMVC站点的hello控制器

2.<code>HandlerMapping</code>(处理器映射器) <code>DispatcherServlet</code>调用<code>HandlerMapping</code> HandlerMapping根据url查找<code>Handler</code>

3.<code>HandlerExecution</code> 表示具体的Handler 根据url查询控制器

4.<code>HandlerExecution</code>将解析后的信息传给<code>DispatcherServlet</code>

5.<code>HandlerAdapter</code>表示处理器适配器 按照特定的规则去执行handler

6.<code>Handler</code>让具体的controller执行

7.<code>Controller</code>返回具体的信息给<code>HandlerAdapter</code> 如ModelAndView

8.<code>HandlerAdapter</code>将视图逻辑名或者模型传递给<code>DispatcherServlet</code>

9.<code>DispatcherServlet</code> 调用<code>viewResolver</code>(视图解析器)来解析<code>HandlerAdapter</code>传递的视图

10.<code>viewResolver</code>将解析的视图名称传递给<code>DispatcherServlet</code>

11.<code>DispatcherServlet</code>根据解析的视图结果 调用具体的视图

12.最后呈现在电脑上给用户看

<code>HandlerMapping</code>是根据url查找控制器的

<code>HandlerAdapter</code>是执行控制器逻辑 并拿到返回结果的

<code>viewResolver</code>是解析视图名称的

<code>DispatcherServlet</code>拿到最后的结果返回出去给用户看

即使再小的帆也能远航

上一篇: QBC查询
下一篇: HelloSpring