一、什么是 MVC?
1.1 什么是 MVC?
- MVC 是模型(Model)、视图(View)和控制器(Controller)的简写,是一款软件设计规范
- 将业务的逻辑、数据、展示分离的方法来组织代码的
- MVC 主要作用降低了视图与业务逻辑间的相互耦合
- MVC 不是一种设计模式,是一种架构模式。不同的 MVC 存在有差异
1.2 Model、View、Controller
- Model(模型):数据模型,提供要展示的数据,因此包含数据和行为,可认为是领域模型或者是 JavaBean 的组件。一般是分开来写的,包括 Value Object(数据DAO)和 服务层(行为 Service)。可以说是模型提供了模型数据查询和模型数据状态更新等功能,包括数据和业务。
- View(视图):负责进行模型的展示,一般就是看到的用户界面,客户想看到的东西。
- Controller(控制器):接受用户请求,委托给模型进行处理(状态改变),处理完毕之后把返回的数据返回给视图,由视图进行展示,可以说 Controller 是做了中间调度的动作。
最典型的 MVC 模式是 JSP + servlet + javabean 的模式。
1.3 MVC 架构要做哪些事?
- 将 url 映射到 Java 类或者 Java 类的方法
- 封装用户提交的数据
- 处理请求–调用业务相关处理–封装响应数据
- 将响应的数据进行渲染成 html 表示层的数据