问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

Spring,SpringBoot和SpringMVC的关系以及区别

创作时间:
作者:
@小白创作中心

Spring,SpringBoot和SpringMVC的关系以及区别

引用
1
来源
1.
https://developer.aliyun.com/article/1617843

Spring: 简单来说, Spring 是一个开发应用框架,什么样的框架呢,有几个标签:轻量级、一站式、模块化,其目的是用于简化企业级应用程序开发。

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

注:

  • 有时候我们口头上说的Spring可能是Spring家族,包括SpringBoot、SpringData,SpringMVC等
  • 有时候说的Spring可能说的就是Spring本身,包含众多工具的IOC容器,不包含SpringBoot等内容,就是单纯的Spring,Spring Framework(Spring的全称)

Spring MVC: Spring MVC是Spring的一个子框架, Spring诞生之后, 大家觉得很好用, 于是按照MVC模式设计了一个 MVC框架(一些用Spring 解耦的组件), 主要用于开发WEB应用和网络接口,所以,
Spring MVC 是一个Web框架。

Spring MVC基于Spring进行开发的, 天生的与Spring框架集成. 可以让我们更简洁的进行Web层开发, 支持灵活的 URL 到页面控制器的映射, 提供了强大的约定大于配置的契约式编程支持, 非常容易与其他视图框架集成,如 Velocity、FreeMarker等

Spring Boot: 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的一套快速开发整合包.

比如较为常见的大学生课设作品,XX管理系统

  • 整体框架是通过SpringBoot搭建的
  • IOC,DI功能是Spring提供的
  • web相关功能是SpringMVC提供的

比如下面这段代码

这三者专注的领域不同,解决的问题也不一样,总的来说,Spring就像一个大家族,有众多衍生产品,但他们的基础都是Spring,用一张图来表示他们的关系:

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号