Spring MVC 与三层架构

文章目录

  • [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 后端开发者, ⼜有了⼀种新的分层架构: 把整体架构分为表现层、业务逻辑层和数据层. 这种分层⽅式也称之为"三层架构"

  1. 表现层(Controller): 就是展⽰数据结果和接受⽤⼾指令的,是最靠近⽤⼾的⼀层;
  2. 业务逻辑层(Service): 负责处理业务逻辑, ⾥⾯有复杂业务的具体实现;
  3. 数据层(Dao): 负责存储和管理与应⽤程序相关的数据,包括数据的增、删、改、查。

Spring MVC 和 三层架构的区别

 MVC 中,视图和控制器合起来对应三层架构中的表现层,模型对应三层架构中的业务逻辑层,数据层,以及实体类,二者其实是从不同角度对软件工程进行了抽象

  • MVC 模式强调数据和视图分离,将数据展示和数据处理分开,通过控制器对两者进行组合
  • 三层架构强调不同维度数据处理的高内聚合低耦合 ,将交互界面,业务处理和数据库操作的逻辑分开角度不同也就谈不上互相替代了,在日常开发的可以经常看到两种共存情况,比如我们设计模型层的时候往往也会拆分出业务逻辑层(Service 层)和数据访问层(Dao 层)
相关推荐
空中湖39 分钟前
Spring AI RAG 完整实战:从零搭建企业知识库问答系统
java·人工智能·spring
笨蛋不要掉眼泪1 小时前
MySQL架构揭秘:慢查询日志详解
数据库·mysql·架构
heimeiyingwang2 小时前
【架构实战】Netty高性能网络编程:IO模型与内存池
架构
sun03225 小时前
【笔记】Spring MVC 相关介绍
java·spring·mvc
解局易否结局7 小时前
ArkUI MVI 架构实战:单向数据流设计模式在 HarmonyOS NEXT 中的深度实践
华为·设计模式·架构·harmonyos
L-影7 小时前
单体与微服务区别
微服务·云原生·架构
运维大师8 小时前
【K8S 运维实战】01-K8s架构深度剖析
运维·架构·kubernetes
XUHUOJUN9 小时前
Azure Stack Hub 容量规划指南(上篇:Microsoft 软件层 + 架构原理)
架构·azure stack
seacracker9 小时前
HPC存储I/O抖动无解?PowerFS基于CRDT弱一致架构,彻底实现前台零抖动
架构·分布式存储·powerfs·hpc存储·i/o零抖动
解局易否结局9 小时前
ArkTS 设计模式与架构进阶:构建可维护的 HarmonyOS 应用
华为·设计模式·架构·harmonyos