SpringMVC(一)MVC设计模式
一、简介
MVC设计模式一般是指MVC框架,Model数据模型层,View视图层,Controller控制层。
使用MVC目的是将M和V实现代码分离,使统一程序有不同的表现形式。其中,View定义比较清晰,指用户界面。
web项目中,用户请求网页上一个URL路径,web服务器获取请求后如何解析用户输入并执行相关逻辑处理,最终跳转至正确的页面反馈结果,这些工作是在Controller控制层完成的。
在请求过程中,用户信息被封装在实体类中,实体类在web项目中属于数据模型层model。
在请求显示阶段,跳转的结果网页就属于视图层(View)。
像这样控制层负责前后台交互,数据模型层封装用户的输入输出数据,视图层选择恰当的视图显示最终的执行结果,这样层次分明的软件开发和处理流程称为MVC模式。
Servlet/JSP开发中:JavaBean相当于Model、Servlet相当于Controller、JSP相当于View。
1.1、MVC模式特点
- 视图层View:负责格式化数据并把他们呈现给用户,包括数据展示、用户交互、数据验证、界面设计等。
- 控制层Controller:负责接收并转发请求,对请求进行处理后,指定视图并将响应结果发送给客户端。
- 数据模型层Model:模型对象拥有最多的处理任务,是应用程序的主体部分,它负责数据逻辑(业务规则)的处理和实现数据操作(数据库中存取数据)。
1.2、JSP+JavaBean开发模式
JSP用于处理用户请求,JavaBean用于封装和处理数据,该模式只有视图和模型,一般把控制器的功能交给视图来实现,适合业务流程比较简单的web程序。
1.3、Servlet+JSP+JavaBean
JSP用于数据显示,JavaBean用于封装数据,Servlet用于处理用户请求,适合复杂web程序。
1.4、MVC优缺点
优点:
- 多视图共享一个模型,大大提高了代码的可重用性
- MVC三个模块相互独立,松耦合架构
- 控制器提高了应用程序的灵活性和可配置性
- 有利于软件工程化管理
缺点: - 原理复杂
- 增加了系统结构和实现的复杂性
- 视图对模型数据的低效率访问
SpringMVC(一)MVC设计模式相关推荐
- mvc设计模式现在过时了吗_尚学堂115——设计模式、源码分析以及SpringData
设计模式 什么是设计模式?你是否在你的代码里面使用过任何设计模式? 设计模式是在软件设计中常见问题的通用.可反复使用.多数人知晓的一种解决方案或模板:这些解决方案是在相当长的一段时间内由众多软件开发人 ...
- maven+mvc设计模式
maven就几个重要的命令: 重要命令 mvn v 查看maven版本路径信息 mvn clean 可将根目录下生成的target文件移除 mvn install 编译加打包 mvc设计模式 自己的理 ...
- 第一章 Web MVC简介 —— 跟开涛学SpringMVC 博客分类: 跟开涛学SpringMVC webmvcjavaeespring跟开涛学SpringMVC Web MVC简介 1.1、We
第一章 Web MVC简介 -- 跟开涛学SpringMVC 博客分类: 跟开涛学SpringMVC webmvcjavaeespring跟开涛学SpringMVC Web MVC简介 1.1.Web ...
- 一篇带你走进程序设计的准则——DAO和MVC设计模式
一.DAO设计模式 DAO最适用于单系统应用程序或小范围本地分布式应用程序使用 1. DAO简介 DAO(Data Access Object,数据访问对象)的主要功能就是操作数据库,也就是数据的增删 ...
- MVC设计模式和MVC框架
MVC设计模式和MVC框架 1.MVC设计模式 M(odel) 模型:是指数据以及操作数据的逻辑 V(iew) 视图:是指数据的展现方式 C(ontroller) 控制器:用于控制应用程序的流程,在模 ...
- MVC设计模式思想简述
什么是设计模式 设计模式是一套被反复使用.多人知晓的,并经过分类编目的代码设计经验的总结. 设计模式不是一种方法或技术,而是一种思想. 语言无关.平台无关.例如:孙子兵法,三十六计等. 设计模式共23 ...
- MVC设计模式与JavaWeb的三层架构
引言: MVC是一种设计思想,是无色无味看不见摸不着的.它是设计师脑子里的东西,而web的三层架构则是落地实现,也就是划分各部分的包(controller.service.dao),然后进行代码的编写 ...
- JSP的MVC设计模式
文章目录 一. MVC模式概念 1. M:Model(模型) 2. V:View(视图) 3. C:Controller(控制器): 4. 图示理解 二. MVC案例 1. WebContent内容 ...
- 什么是SpringMVC和MVC是什么
什么是SpringMVC和MVC是什么? 1.什么是SpringMVC? SpringMVC是Spring的一个模块,是Spring提供的一个实现了WEB MVC 设计模式的轻量级的框架(基于MVC的 ...
最新文章
- TIME_WAIT和CLOSE_WAIT状态
- 调用face++平台api进行人脸识别
- Java说明注释(Doc注释)
- 信用卡申请被拒原因分析
- 分布式系统关注点(2)——烦人的数据不一致问题到底怎么解决?——通过“共识”达成数据一致性...
- 推荐系统实战系列(python版).rar_python实战音乐推荐系统
- zabbix添加表达式
- zabbix client安装配置执行
- https端口必须443吗
- 个人博客如何申请ICP备案
- 零代码爬虫神器 — Web Scraper 的使用
- 机器学习——聚类分析
- 简易的js获取星期几的两种方法
- 2023年产品经理需要考的证书,NPDP含金量真高
- 练习题|文件操作和函数
- 中国制霸生成器火了/ 马斯克香水被炒至原价10倍/ 闽南话翻英语算法来了… 今日更多新鲜事在此...
- 金蝶k3显示加层服务器失败,金蝶k3提示:连接中间加密服务失败,请确认中间层加密服务已启动...
- html页面查找搜索功能代码
- 赛门铁克或触碰Linux底线
- 强大!一键转换LaTex公式,这款开源公式识别神器比Mathpix Snip更适合你
热门文章
- 数说热点 | 2022商业地产的“破局”与“新生”——逆境之下探索新兴可能
- testlink二次开发php,testlink根据需求定制
- B样条曲线曲面(附代码)
- Latex: 修改有序列表的标号形式(例如去掉括号,加上描述)
- 参加长跑比赛的一些注意事项、技巧、装备和训练方法
- 计算矩阵幂次的一般性方法
- Win10《芒果TV》商店版更新v3.2.1:优化手机版卡顿,修复推送故障
- 前端和后端就业前景如何?
- CVPR 2023 | 去雨去噪去模糊,图像low-level任务,视觉AIGC系列
- python 基础笔记