对MVC设计思想的理解
jsp演变历史
- 早期只有servlet,只能使用response输出标签数据,非常麻烦。
- 后来jsp简化了Servlet的开发,如果过度使用jsp,在jsp中写大量的java代码,又写html标签,造成难于维护,难于分工协作。
- 再后来,java的web开发,借鉴mvc设计思想,使得程序的设计更加合理性
MVC设计思想
- MVC不是一种设计模式,而是一种设计思想,概念的区别:
- 设计模式:是一种固定的方法,不灵活,有特定的使用场景;
- 设计思想:是一种思想,比较灵活,由多种设计模式组合实现。
- MVC的设计思想:
- M(Model):主要功能提供数据(主要用来提供数据,不关心数据让谁显示(Controller 负责给M要数据,然后控制数据让哪一个View来显示));
- V(View):主要功能是展示数据(主要有数据即可,不关心数据来源);
- C(Controller):主要功能协调V层与M层,作为V层与M层沟通的桥梁。
流程:
- 首先浏览器发送请求,Controller获取用户的请求,
- 然后Controller调用Model,让Model里的业务操作来进行处理,
- Model处理完毕后将返回的模型数据返回给Controller,
- Controller根据模型返回会的数据选择视图,展示模型。

MVC优缺点
- 优点:
- 降低代码耦合性,方便维护,可以利于分工协作。所以如果一旦哪一层的需求发生了变化,就只需要更改相应的层中的代码而不会影响到其他层中的代码。
- 有利于组件的重用。如控制层可独立成一个能用的组件,表示层也可做成通用的操作界面。可以为一个模型在运行时同时建立和使用多个视图。
- 缺点:
- 增加了系统结构和实现的复杂性。对于简单的界面,严格遵循MVC,使模型、视图与控制器分离,会增加结构的复杂性,并可能产生过多的更新操作,降低运行效率。
- 对开发人员要求高。
- 视图层展示依赖与模型层,视图层需要很少的字段,但是模型层全部提供,性能上有一定影响。
参考文献
本文来自博客园,作者:LeeHua,转载请注明原文链接:https://www.cnblogs.com/liyihua/p/14482446.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)