Spring MVC学习之——了解MVC设计模式

MVC设计模式

MVC介绍

MVC 模式代表 Model-View-Controller(模型-视图-控制器) 模式。这种模式用于应用程序的分层开发。

  • Model(模型) - 模型代表一个存取数据的对象或 JAVA POJO。它也可以带有逻辑,在数据变化时更新控制器。
    • 数据模型:POJO
    • 业务模型:Service,Mapper
  • View(视图) - 视图代表模型包含的数据的可视化。(一般是html或jsp,与用户进行交互。
  • Controller(控制器) - 控制器作用于模型和视图上。它控制数据流向模型对象,并在数据变化时更新视图。它使视图与模型分离开。(控制层,指工程中的servlet,作用是接收请求和响应浏览器)

mvc工作流程

用户通过视图层发送请求到服务器,在服务器中请求被Controller接收,Controller调用相应的Model层处理 请求,处理完毕将结果返回到Controller,Controller再根据请求处理的结果找到相应的View视图,渲染数据 后最终响应给浏览器。

MVC与三层架构的关系:

​ 三层架构的分层模式是典型的上下关系,上层依赖于下层。但MVC作为表现模式是不存在上下关系的,而是相互协作关系。

​ 三层是基于业务逻辑来分的,而mvc是基于页面来分的。

相关推荐
乌暮4 小时前
从 `println` 到生产级日志:Spring Boot 日志体系完全指南
java·开发语言·jvm·spring boot·后端·学习·面试
xian_wwq5 小时前
【学习笔记】Milvus 是什么?为什么 RAG 系统经常使用它?-14
笔记·学习·milvus
一枕槐安4875 小时前
大模型应用后端设计:上下文管理、缓存、降级策略的工程方案总结
java·spring·缓存
步行cgn5 小时前
@RequestMapping 注解详解
java·后端·spring
自信150413057595 小时前
重生之从0开始学习c++之string(下)
c++·学习·stl
kmomo..6 小时前
Linux 驱动开发学习笔记:UART、触摸屏与 ADC 驱动实战
linux·驱动开发·学习
youdexiang6 小时前
如何建立个人学习资料库?
学习
人工智能培训6 小时前
具身智能环境交互与学习范式原理
大数据·linux·人工智能·学习·算法·机器学习
Tj8105236 小时前
企业培训如何真正落地:从组织能力建设到培训ROI评估的完整指南
学习·学习方法
~kiss~6 小时前
LangGraph 和 ToT,Tree of Thoughts 同一步骤多条路线并行探索,用LLM做评判和减枝
学习