-
说明:
- Spring MVC 是表现层的 MVC框架
- 最重要的事情就是做
请求-响应
即:- 接收前端的请求。(Url地址)
- 处理一些业务逻辑
- 返回响应的处理结果(数据 和 视图(Model and View))。
-
核心:
DispatcherServlet
-
Spring MVC 流程
实线是 Spring MVC做的事情
虚线时 需要处理的业务。
红色部分:(1,2,3,4,5,6)请求阶段(URL—> 具体的控制器)
绿色部分:处理相应的业务
蓝色部分:(7,8,9,10,11,12) 响应阶段(获得相应的数据,并选择相应的视图 传到前端)
- DispatcherServlet 接收并拦截用户的请求。
- DispatcherServlet 调用 HandlerMapping :根据URL查找 Handler
- HandlerExecution 表示具体的Handler: 根据URL 查到对应的 Controller
- HandlerExecution 将解析到的信息传回 DispatcherServlet
- HandlerAdapter 按照一定的规则去执行 Handler
- Handler 去执行具体的Controller
- Controller 将具体执行的结果 返回给 HandlerAdapter;(比如 Model and View)
- HandlerAdapter 将 模型或者视图逻辑名传给DispatcherServlet
- DispatcherServlet 调用 视图解析器(ViewResolver)解析视图逻辑名
- ViewResolver 将 解析好的视图 传给DispatcherServlet
- DispatcherServlet 根据解析的结果 调用具体的视图
- 将视图展现给用户。
2 3 4: 主要是 URL–> 找到控制器
5.6:适配具体的控制器
8.7:得到ModelandView
5.6:适配具体的控制器
8.7:得到ModelandView
9,10,11,12: 解析视图 渲染页面