1、SpringMVC概述

学习资源:2020最新SpringMVC教程【IDEA版】-springmvc从入门到精通


1、SpringMVC 简介

SpringMVC 也叫 Spring Web MVC ,是基于 Spring 的一个框架,它是在 Spring3.0 后发布的,专门用于做 Web 开发。(Web 开发的底层是 servlet , 框架是在 servlet 基础上面加入一些功能,方便进行 Web 开发)


2、优点

  1. 基于 MVC 架构,功能分工明确,各个功能之间耦合较低
  2. 容易理解,上手快,使用简单,开发一个注解的 SpringMVC 项目, SpringMVC 也是轻量级的,jar 很小,不依赖的
    特定的接口和类。
  3. 作为 Spring 框架一部分,能够使用 Spring 的 IoC 和 Aop 。 方 便 整 合 Strtus , MyBatis , Hiberate, JPA 等其他框架。
  4. SpringMVC 强化注解的使用,在控制器, Service, Dao 都可以使用注解,方便灵活。
    使用 @Controller 创建处理器对象;@Service 创建业务对象;@Autowired 或者 @Resource 在控制器类中注入 Service、Service 类中注入 Dao。

3、SpringMVC 的MVC 组件

image-20200906170101419


4、SpringMVC 执行流程

image-20200904091838891

执行流程简单分析:

  1. 浏览器提交请求到中央调度器。
  2. 中央调度器直接将请求转给处理器映射器。
  3. 处理器映射器会根据请求,找到处理该请求的处理器,并将其封装为处理器执行链后返回给中央调度器。
  4. 中央调度器根据处理器执行链中的处理器,找到能够执行该处理器的处理器适配器。
  5. 处理器适配器调用执行处理器。
  6. 处理器将处理结果及要跳转的视图封装到一个对象 ModelAndView 中,并将其返回给处理器适配器。
  7. 处理器适配器直接将结果返回给中央调度器。
  8. 中央调度器调用视图解析器,将 ModelAndView 中的视图名称封装为视图对象。
  9. 视图解析器将封装了的视图对象返回给中央调度器
  10. 中央调度器调用视图对象,让其自己进行渲染,即进行数据填充,形成响应对象。
  11. 中央调度器响应浏览器。
原文地址:https://www.cnblogs.com/sout-ch233/p/13622403.html