SpringMVC的作用,在Spring家族体系中功能角色?

一、 什么叫 MVC

模型-视图-控制器(MVC) 是一个众所周知的以设计界面应用程序为基础的设计思想。 它主要通过分离模型、 视图及控制器在应用程序中的角色将业务逻辑从界面中解耦。 通常, 模型负责封装应用程序数据在视图层展示。 视图仅仅只是展示这些数据, 不包含任何业务逻辑。 控制器负责接收来自用户的请求,并调用后台服务(service 或者 dao) 来处理业务逻辑。 处理后, 后台业务层可能会返回了一些数据在视图层展示。 控制器收集这些数据及准备模型在视图层展示。 MVC 模式的核心思想是将业务逻辑从界面中分离出来, 允许它们单独改变而不会相互影响。

 

二、 Spring MVC 的面容

Spring MVC 是 Spring 家族中的一个 web 成员, 它是一种基于 Java 的实现了 Web MVC 设计思想的请求驱动类型的轻量级 Web 框架, 即使用了 MVC 架构模式的思想, 将 web 层进行职责解耦, 基于请求驱动指的就是使用请求-响应模型, 框架的目的就是帮助我们简化开发, Spring MVC 也是要简化我们日常Web 开发的。Spring MVC 是服务到工作者思想的实现。 前端控制器是DispatcherServlet; 应用控制器拆为处理器映射器(Handler Mapping)进行处理器管理和视图解析器(View Resolver)进行视图管理; 支持本地化/国际(Locale) 解析及文件上传等; 提供了非常灵活的数据验证、 格式化和数据绑定机制; 提供了强大的约定大于配置(惯例优先原则) 的契约式编程支持。

Spring MVC的用处:

1.让我们能非常简单的设计出干净的 Web 层;

2. 进行更简洁的 Web 层的开发;

3.天生与 Spring 框架集成(如 IoC 容器、 AOP 等);

4.提供强大的约定大于配置的契约式编程支持;

5.能简单的进行 Web 层的单元测试;

6.支持灵活的 URL 到页面控制器的映射;

7.非常容易与其他视图技术集成, 如 Velocity、 FreeMarker 等等, 因为模型

8.数据不放在特定的 API 里, 而是放在一个 Model 里(Map 数据结构实现, 因此很容易被其他框架使用);

9.非常灵活的数据验证、 格式化和数据绑定机制, 能使用任何对象进行数据绑定, 不必实现特定框架的 API;

10.支持灵活的本地化等解析;

11.更加简单的异常处理;

12.对静态资源的支持;

13. 支持 Restful 风格。

 

Spring MVC 框架也是一个基于请求驱动的 Web 框架, 并且使用了前端控制器模式(是用来提供一个集中的请求处理机制, 所有的请求都将由一个单一的处理程序处理来进行设计, 再根据请求映射规则分发给相应的页面控制器(动作/处理器) 进行处理。

Spring MVC 核心架构图:

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值