前言:学习自https://www.bilibili.com/video/BV1aE41167Tu
MVC介绍
1、M、V、C
MVC是模型(Model)、视图(View)、控制器(Controller)的简写,是一种软件设计规范。通过将业务逻辑、数据、显示分离的方法来组织代码。MVC主要作用是降低了视图与业务逻辑间的双向偶合。MVC不是一种设计模式,MVC是一种架构模式。不同的MVC存在差异。(一个经典的MVC就是JSP + servlet + javabean的模式)
(1)Model
- 业务处理层:业务逻辑(Service)
- 数据持久层:CRUD(Dao)
(2)View
- 展示数据
- 提供链接发起Servlet请求(例如<a>, <form>, <img>等)
(3)Controller
- 接收用户请求:Request——请求参数、Session——会话信息
- 交给业务层处理对应代码
- 控制视图跳转
2、MVC架构图例
图例一
图例二
3、Web开发历史
(1)Model1时代
分为两层:模型层和视图层
Model1优点:架构简单,比较适合小型项目开发;
Model1缺点:JSP职责不单一,职责过重,不便于维护。JSP页面身兼View和Controller两种角色,将控制逻辑和表现逻辑混杂在一起,从而导致代码的重用性非常低,增加了应用的扩展性和维护的难度
(2)Model2时代
分为三层:模型层,视图层和控制层
Model2提高的代码的复用率与项目的扩展性,且大大降低了项目的维护成本