Spring, Spring Boot 和Spring MVC的关系以及区别

一、Spring

简单来说, Spring 是一个开发应用框架,主打轻量级、一站式、模块化,其目的是用于简化企业级应用程序开发。

Spring 的主要功能:管理对象,以及对象之间的依赖关系,面向切面编程,数据库事务管理, 数据访问,web框架支持等。
但是 Spring 具备高度可开放性,并不强制依赖 Spring,开发者可以自由选择 Spring 的部分或者全部,Spring 可以无缝继承第三方框架,比如数据访问框架 ( Hibernate 、JPA ),web框架 (Struts、 JSF)。

二、Spring Boot

Spring MVC 是 Spring 的一个子框架,Spring诞生之后,大家觉得很好用,于是按照 MVC 模式设计了一个 MVC 框架 ( 一些用Spring 解耦的组件),主要用于开发WEB应用和网络接口,所以,Spring MVC 是一个Web框架。
Spring MVC 基于 Spring 进行开发的,天生的与 Spring 框架集成,可以让我们更简洁的进行Web层开发, 支持灵活的 URL 到页面控制器的映射,提供了强大的约定大于配置的契约式编程支持, 非常容易与其他视图框架集成,如 Velocity、FreeMarker 等。

三、Spring MVC

Spring Boot 是对 Spring 的一个封装,为了简化 Spring 应用的开发而出现的,中小型企业,没有成本研究自己的框架,使用 Spring Boot 可以更加快速的搭建框架,降级开发成本,让开发人员更加专注于 Spring 应用的开发,而无需过多关注XML的配置和一些底层的实现。

Spring Boot 是个脚手架, 插拔式搭建项目,可以快速的集成其他框架进来。比如想使用 SpringBoot 开发 Web 项目, 只需要引入Spring MVC 框架即可,Web 开发的工作是 SpringMVC 完成的,而不是 SpringBoot,想完成数据访问,只需要引入 Mybatis 框架即可。
Spring Boot 只是辅助简化项目开发的,让开发变得更加简单,甚至不需要额外的web服务器,直接 生成jar包执行即可。

四、总结

Spring MVC 和 Spring Boot 都属于Spring,Spring MVC 是基于Spring的一个MVC 框架,而Spring Boot 是基于Spring 的一套快速开发整合包。

相关推荐
斌糖雪梨2 小时前
spring auth 核心流程详解
java·后端·spring
唠点键盘之外的7 小时前
29 切片的权限隔离(实战篇):Milvus + Spring AI,从 0 搭一条带权限过滤的检索链路
人工智能·spring·milvus
小蒜学长8 小时前
基于Spring Boot+Vue3的在线游戏技术指导师匹配系统的设计与实现(代码+数据库+LW)
java·数据库·spring boot·后端·在线游戏技术指导
weixin_BYSJ19879 小时前
【计算机毕设】房屋租赁系统02647
java·vue.js·spring boot·python·django·课程设计
步行cgn9 小时前
HTTP 请求协议详解
spring·mvc
VX_bysjlw98510 小时前
基于协同过滤的美食推荐系统的设计与实现32221-计算机毕设原创(免费领源码+带部署教程)
java·spring boot·redis·mysql·tomcat·maven·mybatis
专业程序开发源10 小时前
springboot校企合作双选会一站式预约与面试系统16010-计算机课程设计、毕业设计
java·vue.js·spring boot·后端·面试·php·课程设计
MoRanzhi120311 小时前
第3篇 · 使用 PyQt5 实现 2048 桌面版游戏:MVC 架构与撤销和重做
python·mvc·pyqt5·桌面应用开发·gui开发·2048游戏·撤销与重做
code_slave(码畜)11 小时前
微服务架构落地:读写分离架构 —— 主从延迟引发的“刚开单查不到”灾难与破局
spring boot·分布式·spring cloud·微服务·云原生·架构·读写分离
凤山老林12 小时前
构建多通道通知中心:模板化设计、异步削峰与可靠重试实践
spring boot·异步削峰·模板设计