Java EE之第11章Spring MVC入门

本文介绍了Spring MVC,它是Spring框架的一部分,提供了一个实现Web MVC模式的轻量级Web框架。Spring MVC的特点包括与Spring的集成、前端控制器DispatcherServlet、用户输入自动绑定和校验等。接着详细阐述了Spring MVC的工作流程,从用户请求到DispatcherServlet拦截,经过处理器映射器、处理器适配器,再到视图解析器将结果呈现给用户。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

11.1Spring MVC概述

Spring MVC:是Spring提供的一个实现了Web MVC设计模式的轻量级Web框架。它与Struts2框架一样,都属于MVC框架,但其使用和性能等方面比Struts2更加优异

Spring MVC具有如下特点:
(1)是Spring框架的一部分,可以方便地利用Spring所提供的其他功能

(2)提供一个前端控制器DispatcherServlet,使开发人员无须额外开发控制器对象

(3)可自动绑定用户输入,并能正确的转换数据类型

(4)内置了常见的校验器,可以校验用户输入。如果校验不能通过,那么就会重定向到输入表单

(5)支持多种视图技术,它支持JSP,Velocity和FreeMarker等视图技术

(6)使用基于HTML的配置文件,在编辑后,不需要重新编译应用程序

11.2Spring MVC的工作流程

在这里插入图片描述
按照图11-4中所标注的序号,Spring MVC程序的完整执行流程如下:

(1)用户通过客户端向服务器发送请求,请求会被Spring MVC的前端控制器DispatcherServlet所拦截

(2)DispatcherServlet拦截到请求后,会调用HandlerMapping处理器映射器

(3)处理映射器根据请求URL找到具体的处理器,生成处理器对象及处理器拦截器(如果有则生成)一并返回给DispatcherServlet

(4)DispatcherServlet会通过返回信息选择合适的HandlerAdapter(处理器适配器)

(5)HandlerAdapter会调用并执行Handler(处理器),这里的处理器指的就是程序中编写的Controller类,也被称之后端控制器

(6)Controller执行完成后,会返回一个ModelAndview对象,该对象中会包含视图名或包含模型和视图名

(7)HandlerAdapter将ModelAndview对象返回给DispatcherServlet

(8)DispatcherServlet会根据ModelAndview对象选择一个合适的ViewResolver(视图解析器)

(9)DispatcherServlet对View进行渲染(即将模型数据填充至视图中)

(10)视图渲染结果会返回给客户端浏览器显示

处理器映射器:根据客户端请求的url,找到处理本次请求的handler(处理器),将url和controller关联起来

处理器映射器:对映射器查找到的controller中的方法进行调用
第一种:Controller适配

第二种:HttpRequestHandler适配

第三种:注解适配

不同的处理器,对应不同的适配器,但是所有适配器最终都返回ModelAndView对象,springmvc通过对ModelAndView对象进行解析,获得需要响应到客户端的数据和视图

视图解析器:解析结果视图,并将结果呈现给用户

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值