没有合适的资源?快使用搜索试试~ 我知道了~
该文档是我在学习SpringMVC过程总结的文档
资源推荐
资源详情
资源评论
SpringMVC
王伟斌
SpringMVC...................................................................................................................................... 1
王伟斌............................................................................................................................ 1
2.1、Spring Web MVC 是什么............................................................................................. 3
2.2、Spring Web MVC 能帮我们做什么.............................................................................3
2.3、Spring Web MVC 架构................................................................................................. 3
2.3.1、Spring Web MVC 处理请求的流程.....................................................................4
2.3.2、Spring Web MVC 架构......................................................................................... 5
2.4、Spring Web MVC 优势................................................................................................. 9
2.5、Hello World 入门......................................................................................................... 9
2.5.1、准备开发环境和运行环境:.............................................................................9
2.5.2、前端控制器的配置........................................................................................... 10
2.5.3、在 Spring 配置文件中配置 HandlerMapping、HandlerAdapter.......................10
2.5.4、在 Spring 配置文件中配置 ViewResolver.........................................................11
2.5.5、开发处理器/页面控制器.................................................................................. 11
2.5.6、开发视图页面................................................................................................... 13
2.5.6、启动服务器运行测试....................................................................................... 13
2.5.7、运行流程分析................................................................................................... 13
2.6、POST 中文乱码解决方案.......................................................................................... 15
2.7、Spring3.1 新特性....................................................................................................... 15
2.8、基于 spring 3.0mvc 框架的文件上传实现................................................................18
上传成功!.................................................................................................................................. 20
上传失败!.................................................................................................................................. 20
2.9、处理 ajax 请求.......................................................................................................... 20
2.1、Spring Web MVC 是什么
Spring Web MVC 是一种基于 Java 的实现了 Web MVC 设计模式的请求驱动类型的轻量级
Web 框架,即使用了 MVC 架构模式的思想,将 web 层进行职责解耦,基于请求驱动指的
就是使用请求-响应模型,框架的目的就是帮助我们简化开发,Spring Web MVC 也是要简
化我们日常 Web 开发的。
另外还有一种基于组件的、事件驱动的 Web 框架在此就不介绍了,如 Tapestry、JSF 等。
Spring Web MVC 也是服务到工作者模式的实现,但进行可优化。前端控制器是
DispatcherServlet;应用控制器其实拆为处理器映射器(Handler Mapping)进行处理器
管理和视图解析器(View Resolver)进行视图管理;页面控制器/动作/处理器为 Controller 接
口(仅包含 ModelAndView handleRequest(request, response)方法)的实现
(也可以是任何的 POJO 类);支持本地化(Locale)解析、主题(Theme)解析及文件
上传等;提供了非常灵活的数据验证、格式化和数据绑定机制;提供了强大的约定大于配
置(惯例优先原则)的契约式编程支持。
2.2、Spring Web MVC 能帮我们做什么
√让我们能非常简单的设计出干净的 Web 层和薄薄的 Web 层;
√进行更简洁的 Web 层的开发;
√天生与 Spring 框架集成(如 IoC 容器、AOP 等);
√提供强大的约定大于配置的契约式编程支持;
√能简单的进行 Web 层的单元测试;
√支持灵活的 URL 到页面控制器的映射;
√非常容易与其他视图技术集成,如 Velocity、FreeMarker 等等,因为模型数据不放在特
定的 API 里,而是放在一个 Model 里(Map 数据结构实现,因此很容易被其他框架使用);
√非常灵活的数据验证、格式化和数据绑定机制,能使用任何对象进行数据绑定,不必实现
特定框架的 API;
√提供一套强大的 JSP 标签库,简化 JSP 开发;
√支持灵活的本地化、主题等解析;
√更加简单的异常处理;
√对静态资源的支持;
√支持 Restful 风格。
2.3、Spring Web MVC 架构
Spring Web MVC 框架也是一个基于请求驱动的 Web 框架,并且也使用了前端控制器模式
来进行设计,再根据请求映射规则分发给相应的页面控制器(动作/处理器)进行处理。首
先让我们整体看一下 Spring Web MVC 处理请求的流程:
2.3.1、Spring Web MVC 处理请求的流程
如图 2-1
图 2-1
具体执行步骤如下:
1、òò首先用户发送请求————>前端控制器,前端控制器根据请求信息(如 URL)来决
定选择哪一个页面控制器进行处理并把请求委托给它,即以前的控制器的控制逻辑部分;
图 2-1 中的 1、2 步骤;
2、òò页面控制器接收到请求后,进行功能处理,首先需要收集和绑定请求参数到一个对象,
这个对象在 Spring Web MVC 中叫命令对象,并进行验证,然后将命令对象委托给业务对
象进行处理;处理完毕后返回一个 ModelAndView(模型数据和逻辑视图名);图 2-1 中
的 3、4、5 步骤;
3、òò前端控制器收回控制权,然后根据返回的逻辑视图名,选择相应的视图进行渲染,并
把模型数据传入以便视图渲染;图 2-1 中的步骤 6、7;
4、òò前端控制器再次收回控制权,将响应返回给用户,图 2-1 中的步骤 8;至此整个结束。
问题:
1、òò请求如何给前端控制器?
2、òò前端控制器如何根据请求信息选择页面控制器进行功能处理?
3、òò如何支持多种页面控制器呢?
4、òò如何页面控制器如何使用业务对象?
5、òò页面控制器如何返回模型数据?
6、òò前端控制器如何根据页面控制器返回的逻辑视图名选择具体的视图进行渲染?
7、òò不同的视图技术如何使用相应的模型数据?
首先我们知道有如上问题,那这些问题如何解决呢?请让我们先继续,在后边依次回答。
2.3.2、Spring Web MVC 架构
1、Spring Web MVC 核心架构图,如图 2-2
图 2-2
架构图对应的 DispatcherServlet 核心代码如下:
java 代码:
Java 代码òò ò
前端控制器分派方法òò
protectedvoid
throws
!"
# $%!null"
& int'!("
)
* try
+ ,-./%"
0 boolean./!false"
剩余40页未读,继续阅读
资源评论
MerryBin
- 粉丝: 1
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 2001~2022年上市公司数字赋能指数.dta
- 2001~2022年上市公司数字赋能指数.xlsx
- 信息办公石大在线财务管理系统(含源码)-shidacaiwu.rar
- 信息办公电信计费系统完整代码-netctossconformity.rar
- matlab实现TD-SCDMA中初始同步捕捉DwPTS下行同步导频时隙的仿真.zip
- 信息办公玉玺学生信息管理系统-webapps.rar
- 信息办公基于struts的图书管理系统-struts-ts.rar
- 管家婆分销ERP V1 V3 A8II TOP V10.0.2最新全版本通用
- 信息办公基于Ajax+J2EE的MicroERP源码下载-microerp-0.1.rar
- 信息办公双鱼林jsp人事工资系统-wagesmanagesystem.rar
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功