
第12章SpringMVC基础·SpringMVC概述。SpringMVC的重要API·SpringMVC的简单应用·SpringMVC的常用注解
第12章 Spring MVC基础 • Spring MVC概述 • Spring MVC的重要API • Spring MVC的简单应用 • Spring MVC的常用注解

SpringMVC概述12.1点击查看本小节知识架构SpringMVC的重要API12.2点击查看本小节知识架构SpringMVC的简单应用12.3Spring MVC的常用注解12.4点击查看本小节知识架构
Spring MVC概述 ☞点击查看本小节知识架构 Spring MVC的重要API Spring MVC的简单应用 ☞点击查看本小节知识架构 Spring MVC的常用注解 ☞点击查看本小节知识架构

学习目标理解Spring MVC掌握Spring的功能组件和MVC的重要API工作流程掌握理解掌握掌握Spring掌握SpringMVC的简单MVC的常用应用注解
理解Spring MVC 的功能组件和 工作流程 1 掌握Spring MVC的常用 注解 4 2 掌握Spring MVC的重要 API 3 掌握Spring MVC的简单 应用 学习目标

12.1SpringMVC概述返回目录12.1.1SpringMVC简介.i.12.1.2SpringMvC的功能组件12.1.3SpringMVC的工作流程
12.1 Spring MVC概述 12.1.1 Spring MVC简介 返回目录 12.1.2 Spring MVC的功能组件 12.1.3 Spring MVC的工作流程

12.1SpringMVC概述12.1.1SpringMVC简介:在第三方MVC框架获得广泛运用之前,开发中通常直接基于Model2模式编写原生代码。为了避免大量使用原生代码带来的弊端,企业级开发中开始转向使用MVC框架,常用的MVC框架包括Struts、SpringMVC等。·SpringMVC是Spring的一个模块,同时也是一个可用于构建Web程序的MVC框架。SpringMVC改善了传统的Model2模式,它提供了一个前端控制器来分发请求,同时,它还支持包括JSP、FreeMarker、Velocity等在内的多项视图技术。除此之外,SpringMVC还提供有多样化配置、表单校验、自动绑定用户输入等功能。:SpringMVC灵活、高效,配置方便,与其他的MVC框架相比,它可以与Spring无缝集成并使用Spring的功能,表现出更好的复用性和扩展性
12.1 Spring MVC概述 12.1.1 Spring MVC简介 • 在第三方MVC框架获得广泛运用之前,开发中通常直接基于Model2模式编写原生代码。为了避免大量 使用原生代码带来的弊端,企业级开发中开始转向使用MVC框架,常用的MVC框架包括Struts、Spring MVC等。 • Spring MVC是Spring的一个模块,同时也是一个可用于构建Web程序的MVC框架。Spring MVC改善 了传统的Model2模式,它提供了一个前端控制器来分发请求,同时,它还支持包括JSP、FreeMarker、 Velocity等在内的多项视图技术。除此之外,Spring MVC还提供有多样化配置、表单校验、自动绑定用 户输入等功能。 • Spring MVC灵活、高效,配置方便,与其他的MVC框架相比,它可以与Spring无缝集成并使用Spring 的功能,表现出更好的复用性和扩展性

12.1SpringMVC概述12.1.2SpringMVC的功能组件:Spring通过一系列组件实现功能,这些组件包括DispatcherServlet(前端控制器)、HandlerMapping(处理器映射器)Handler(处理器)、HandlAdapter(处理器适配器)、ViewResolver(视图解析器)等。1.DispatcherServlet(前端控制器):前端控制器负责拦截客户端请求并分发给其他组件,它是整个流程控制的中心,负责调度其他组件的执行,降低各组件之间的耦合,提升整体效率。前端控制器由框架提供,在程序运行过程中自动实现功能2.HandlerMapping(处理器映射器):处理器映射器负责根据客户端请求的URL寻找处理器,SpringMVC中提供了配置文件、注解等映射方式,这些映射方式将由相应的处理器映射器负责处理。处理器映射器由框架提供,在程序运行过程中自动实现功能
12.1.2 Spring MVC的功能组件 • Spring通过一系列组件实现功能,这些组件包括DispatcherServlet(前端控制器)、HandlerMapping (处理器映射器)、Handler(处理器)、HandlAdapter(处理器适配器)、ViewResolver(视图解析器) 等。 1. DispatcherServlet(前端控制器) • 前端控制器负责拦截客户端请求并分发给其他组件,它是整个流程控制的中心,负责调度其他组件的执 行,降低各组件之间的耦合,提升整体效率。前端控制器由框架提供,在程序运行过程中自动实现功能。 2. HandlerMapping(处理器映射器) • 处理器映射器负责根据客户端请求的URL寻找处理器,Spring MVC中提供了配置文件、注解等映射方式, 这些映射方式将由相应的处理器映射器负责处理。处理器映射器由框架提供,在程序运行过程中自动实 现功能。 12.1 Spring MVC概述

12.1SpringMVC概述12.1.2SpringMVC的功能组件3.Handler(处理器):处理器负责对客户端的请求进行处理,由于处理请求涉及到具体的业务逻辑,因此,开发者需要在处理器中编写处理业务逻辑的代码4.HandlerAdapter(处理器适配器):处理器适配器负责根据特定的规对处理器进行热行,它可以执行多种类型的处理器,是设计模式中适配器模式的具体应用。处理器适配器由框架提供,在程序运行过程中自动实现功能5.ViewResolver(视图解析器):视图解析器负责视图解析,它可以将处理结果生成VieW(视图)并展示给用户。视图解析器由框架提供,在程序运行过程中自动实现功能,但是View需要由开发者根据具体需求编写
3. Handler(处理器) • 处理器负责对客户端的请求进行处理,由于处理请求涉及到具体的业务逻辑,因此,开发者需要在处理器 中编写处理业务逻辑的代码。 4. HandlerAdapter(处理器适配器) • 处理器适配器负责根据特定的规则对处理器进行执行,它可以执行多种类型的处理器,是设计模式中适配 器模式的具体应用。处理器适配器由框架提供,在程序运行过程中自动实现功能。 5. ViewResolver(视图解析器) • 视图解析器负责视图解析,它可以将处理结果生成View(视图)并展示给用户。视图解析器由框架提供, 在程序运行过程中自动实现功能,但是View需要由开发者根据具体需求编写。 12.1.2 Spring MVC的功能组件 12.1 Spring MVC概述

12.1SpringMVC概述12.1.3SpringMVC的功能流程SpringMVC的工作流程主要围绕DispatcherServlet(前端控制器)展开,前端控制器负责拦截客户端发送的请求并将它分发给对应的处理器处理。因此,前端控制器是SpringMVC整个流程控制的中心。·SpringMVC的工作流程,如图所示。HandlanMapping-cerVetxml2??HandiarAdaptaDispether SerVetHITP6ModelAndView用户Kodet5ViewResolverHITPHendlerView?(ISPXMLPDE.-),图中展示了SpringMVC从接收请求到响应的工作流程
12.1.3 Spring MVC的功能流程 • Spring MVC的工作流程主要围绕DispatcherServlet(前端控制器)展开,前端控制器负责拦截客户端 发送的请求并将它分发给对应的处理器处理。因此,前端控制器是Spring MVC整个流程控制的中心。 • Spring MVC的工作流程,如图所示。 • 图中展示了Spring MVC从接收请求到响应的工作流程。 12.1 Spring MVC概述

12.1SpringMVC概述12.1.3SpringMVC的功能流程在运行过程中,SpringMVC框架的众多组件协同工作,各司其职,共同支撑了SpringMVC框架的功能。通常情况下,SpringMVC在处理客户端请求时要完成以下步骤。(1)客户端发出一个HTTP请求,Web应用服务器接收这个请求,如果Web应用的配置文件中指定有DispatcherServlet的映射路径,那么服务器将该请求交给DispatchserServlet处理。(2)DispatchserServlet接收到请求后,将根据包括URL、方法、报文头和参数在内的请求信息以及HandlerMapping的配置解析出自标Handler。(3)在解析出目标Handler后,DispatchserServlet将通过相应的HandlerAdapter来调用Handler并完成业务逻辑的处理。(4)在成业务逻辑处理后,代表处理结果的ModelAndView会被返回到DispatchserServlet,ModelAndView中包含逻辑视图名和模型数据信息
在运行过程中,Spring MVC框架的众多组件协同工作,各司其职,共同支撑了Spring MVC框架的功 能。通常情况下,Spring MVC在处理客户端请求时要完成以下步骤。 (1)客户端发出一个HTTP请求,Web应用服务器接收这个请求,如果Web应用的配置文件中指定有 DispatcherServlet的映射路径,那么服务器将该请求交给DispatchserServlet处理。 (2)DispatchserServlet接收到请求后,将根据包括URL、方法、报文头和参数在内的请求信息以及 HandlerMapping的配置解析出目标Handler。 (3)在解析出目标Handler后,DispatchserServlet将通过相应的HandlerAdapter来调用Handler并完成 业务逻辑的处理。 (4)在成业务逻辑处理后,代表处理结果的ModelAndView会被返回到DispatchserServlet, ModelAndView中包含逻辑视图名和模型数据信息。 12.1.3 Spring MVC的功能流程 12.1 Spring MVC概述

12.1SpringMVC概述12.1.3SpringMVC的功能流程(5)DispatcherServlet通过ViewResolver完成逻辑视图名到真实View对象的解析。(6)获得真实的View对象后,DispatcherServlet将模型数据传给View对象并通过View对象对模型数据进行视图染。(7)DispatcherServlet将最终的View对象响应给客户端并展示给用户。以上7个步骤是SpringMVC在处理客户端请求时的基本流程,这些步骤中的大部分是SpringMVC自动完成的。由于Handler需要处理具体业务逻辑,View需要向用户展示页面,因此,开发者只需编写与Handler和View相关的内容
(5)DispatcherServlet通过ViewResolver完成逻辑视图名到真实View对象的解析。 (6)获得真实的View对象后,DispatcherServlet将模型数据传给View对象并通过View对象对模型数据 进行视图渲染。 (7)DispatcherServlet将最终的View对象响应给客户端并展示给用户。 以上7个步骤是Spring MVC在处理客户端请求时的基本流程,这些步骤中的大部分是Spring MVC自 动完成的。由于Handler需要处理具体业务逻辑,View需要向用户展示页面,因此,开发者只需编写与 Handler和View相关的内容。 12.1.3 Spring MVC的功能流程 12.1 Spring MVC概述