文章目录
- [Spring MVC](#Spring MVC)
- 三层架构
- [Spring MVC 和 三层架构的区别](#Spring MVC 和 三层架构的区别)
Spring MVC
MVC (Model-View-Controller)是⼀种软件架构设计模式

Spring Web MVC是基于 Servlet API 构建的原始 Web 框架,从⼀开始就包含在 Spring 框架中。Spring Boot 只是实现Spring MVC的其中⼀种⽅式,Spring在实现MVC时, 也结合⾃⾝项⽬的特点, 做了⼀些改变,

三层架构
⽬前现在更主流的开发⽅式是 "前后端分离" 的⽅式, 后端开发⼯程师不再需要关注前端的实现, 所以对于 Java 后端开发者, ⼜有了⼀种新的分层架构: 把整体架构分为表现层、业务逻辑层和数据层. 这种分层⽅式也称之为"三层架构"
- 表现层(Controller): 就是展⽰数据结果和接受⽤⼾指令的,是最靠近⽤⼾的⼀层;
- 业务逻辑层(Service): 负责处理业务逻辑, ⾥⾯有复杂业务的具体实现;
- 数据层(Dao): 负责存储和管理与应⽤程序相关的数据,包括数据的增、删、改、查。
Spring MVC 和 三层架构的区别
MVC 中,视图和控制器合起来对应三层架构中的表现层,模型对应三层架构中的业务逻辑层,数据层,以及实体类,二者其实是从不同角度对软件工程进行了抽象
- MVC 模式强调数据和视图分离,将数据展示和数据处理分开,通过控制器对两者进行组合
- 三层架构强调不同维度数据处理的高内聚合低耦合 ,将交互界面,业务处理和数据库操作的逻辑分开角度不同也就谈不上互相替代了,在日常开发的可以经常看到两种共存情况,比如我们设计模型层的时候往往也会拆分出业务逻辑层(Service 层)和数据访问层(Dao 层)
