当前位置: 首页 > news >正文

Spring MVC-什么是Spring MVC?

在这里插入图片描述

T04BF

👋专栏: 算法|JAVA|MySQL|C语言

🫵 今天你敲代码了吗

文章目录

  • 1.MVC定义
  • 2. Spring MVC

官方对于Spring Web MVC的描述这样的:

Spring Web MVC is the original web framework built on the Servlet APl and has been includedin the Spring Framework from the very beginning. The formal name, “Spring Web MVc”,comes from the name of its source module (spring-webmvc)
即Spring Web MVC 是基于 Servlet API 构建的原始 Web 框架,从⼀开始就包含在 Spring 框架中。它的 正式名称“Spring Web MVC”来⾃其源模块的名称(Spring-webmvc),但它通常被称为"Spring MVC"
那么什么是Servlet??
Servlet 是一种实现动态页面的技术,准确来讲Servlet是一套 Java Web 开发的规范,或者说是一套Java Web 开发的技术标准,只有规范并不能做任何事情,必须要有人去实现它.所谓实现 Servlet 规范,就是真正编写代码去实现 Servlet 规范提到的各种功能,包括类、方法、属性等Servlet 规范是开放的,除了Sun 公司,其它公司也可以实现 Servlet规范,目前常见的实现了Servlet规范的产品包括Tomcat、Weblogic、Jetty、Jboss、WebSphere 等,它们都被称为"Servlet 容器".Servlet 容器用来管理程序员编写的 Servlet 类.

简而言之,Spring Web MVC是一个Web框架,也称为"Spring MVC"

1.MVC定义

MVC(Model View Controller),是软件工程中的一种软件架构设计模式,将软件系统分为模型、视图和控制器三个基本部分
在这里插入图片描述

  • View(视图)指在应用程序中专门用来与浏览器进行交互,展示数据的资源
  • Model(模型)是应用程序的主体部分,用来处理程序中的数据逻辑的部分
  • Controller(控制器)理解为一个分发器,用来决定但对于视图发来的请求,需要用哪一个模型来处理,以及处理完后需要跳转回哪一个视图。即用来连接视图和模型

2. Spring MVC

MVC是一种架构设计模式,也是一种思想,而Spring MVC是对这种思想的实现
除此之外,Spring MVC还是一个Web 框架
总的来说,Spring MVC是一个实现了MVC模式的web框架
我们使用idea创建Spring Boot项目的时候,勾选的Spring Web指的就是Spring MVC

Spring Boot和 Spring MV到底是什么关系?? 两者同时存在不会产生冲突吗?
实际上,Spring Boot只是实现Spring MVC的其中一种方式而已
Spring Boot可以添加很多依赖,借助这些依赖实现不同的功能,而Spring Boot就是添加了Spring Web MVC框架来实现Web功能

Spring MVC在实现MVC的时候,也是结合了自身项目的特点,做了一些改变,但是实际上核心是没有变化的

在这里插入图片描述

感谢您的访问!!期待您的关注!!!

在这里插入图片描述

T04BF

🫵 今天记得敲代码

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 全国产服务器主板:搭载飞腾FT2000+/64处理器的高性能加固服务器
  • 【ASP.NET网站传值问题】“object”不包含“GetEnumerator”的公共定义,因此 foreach 语句不能作用于“object”类型的变量等
  • FastAPI 学习之路(五十九)封装统一的json返回处理工具
  • .NET C# 使用 iText 生成PDF
  • JS中对象的方括号[]和点.【对象属性的访问和设置】
  • 如何在项目中打印sql和执行的时间
  • 机器学习的持续交付-CD4ML 端到端自动化构建部署机器学习应用
  • RuoYi-后端管理项目入门篇1
  • Jupyter Notebook安装及基本使用
  • arm的GIC中断
  • c++初阶知识——内存管理与c语言内存管理对比
  • B树与B+树的区别
  • 中间件的理解
  • 数据建模标准-关系建模
  • Airtest的控制手机滑动位置偏差修正方法总结
  • 【跃迁之路】【641天】程序员高效学习方法论探索系列(实验阶段398-2018.11.14)...
  • 【跃迁之路】【733天】程序员高效学习方法论探索系列(实验阶段490-2019.2.23)...
  • CSS中外联样式表代表的含义
  • iOS编译提示和导航提示
  • JavaScript学习总结——原型
  • Laravel 实践之路: 数据库迁移与数据填充
  • leetcode386. Lexicographical Numbers
  • PHP 使用 Swoole - TaskWorker 实现异步操作 Mysql
  • - 概述 - 《设计模式(极简c++版)》
  • 漂亮刷新控件-iOS
  • 如何抓住下一波零售风口?看RPA玩转零售自动化
  • 什么软件可以提取视频中的音频制作成手机铃声
  • 一起参Ember.js讨论、问答社区。
  •  一套莫尔斯电报听写、翻译系统
  • 用 vue 组件自定义 v-model, 实现一个 Tab 组件。
  • 通过调用文摘列表API获取文摘
  • ​ 全球云科技基础设施:亚马逊云科技的海外服务器网络如何演进
  • ​iOS安全加固方法及实现
  • ​草莓熊python turtle绘图代码(玫瑰花版)附源代码
  • # SpringBoot 如何让指定的Bean先加载
  • #Z2294. 打印树的直径
  • #进阶:轻量级ORM框架Dapper的使用教程与原理详解
  • #我与Java虚拟机的故事#连载15:完整阅读的第一本技术书籍
  • (01)ORB-SLAM2源码无死角解析-(56) 闭环线程→计算Sim3:理论推导(1)求解s,t
  • (13)Hive调优——动态分区导致的小文件问题
  • (2)Java 简介
  • (MIT博士)林达华老师-概率模型与计算机视觉”
  • (八)五种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (不用互三)AI绘画:科技赋能艺术的崭新时代
  • (苍穹外卖)day03菜品管理
  • (二)c52学习之旅-简单了解单片机
  • (亲测有效)推荐2024最新的免费漫画软件app,无广告,聚合全网资源!
  • (十)DDRC架构组成、效率Efficiency及功能实现
  • (转)我也是一只IT小小鸟
  • .Net Attribute详解(上)-Attribute本质以及一个简单示例
  • .net CHARTING图表控件下载地址
  • .NET 漏洞分析 | 某ERP系统存在SQL注入
  • .NET/C# 阻止屏幕关闭,阻止系统进入睡眠状态
  • .net程序集学习心得
  • .NET的数据绑定