锋盈数科-知识库 Logo
首页
软件开发
计算机基础
Hello Halo
新手必读
关于本知识库
登录 →
锋盈数科-知识库 Logo
首页 软件开发 计算机基础 Hello Halo 新手必读 关于本知识库
登录
  1. 首页
  2. 软件开发
  3. JAVA
  4. Spring MVC、Spring Boot和Spring Cloud 三者区别和联系

Spring MVC、Spring Boot和Spring Cloud 三者区别和联系

0
  • JAVA
  • 发布于 2024-08-15
  • 0 次阅读
黄健
黄健

本文由 简悦 SimpRead 转码, 原文地址 blog.csdn.net

引言

  近期在做系统重构的项目工作,在跟开发沟通对接过程中,经常听到他们讲开发框架:Spring MVC、Spring Boot、Spring Cloud,故对这三者进行一些学习了解,下面我针对由来、作用与关联等方面,来总结一下我学习成果。

由来

  Spring MVC、Spring boot、Spring Cloud 都属于 Spring 框架的一部分,它们都是用来简化和加速 Java 应用程序开发的工具和框架,是不同阶段的技术手段的升级。
Spring MVC 最初是作为 Spring 框架的一个模块而引入的, 用于构建基于 MVC 设计模式的 Web 应用程序。它在 2003 年 Spring 1.0 版本中首次亮相。
Spring Boot 起源于 2012 年 by Pivotal 团队的一个内部项目, 目标是让 Spring 应用的创建、配置和部署变得简单。2014 年 4 月发布了第一个版本。
2014 年底, Netflix 演进分布式系统解决方案时开源了一系列组件 (Eureka、Hystrix 等),Spring Cloud 应运而生, 整合并扩展了这些模式, 旨在简化分布式系统构建。2015 年 5 月发布首个 GA 版本后, Spring Cloud 迅速成为 Java 领域构建微服务的热门选择。开发者发现通过 Spring Cloud 可以较为简单地构建可靠、安全、协调的分布式系统。

作用与关联

  关于 Spring MVC、Spring boot、Spring Cloud 的作用,可以通过这个例子来说明:Spring 就像一座巨大的厂房, Spring MVC 就是这个厂房里的一个重要车间。这个车间专门负责制造 Web 应用程序的骨架和肌肉部分。它为 Web 应用搭建好了基本框架, 并提供了处理 HTTP 请求、渲染页面等核心功能;而 Spring Boot 就像这个厂房里的一个自动化机器, 让制造 Web 应用变得更加高效,它为 Spring 提供了自动配置、内嵌服务器等一体化解决方案, 使开发人员能够迅速启动并运行应用程序, 而不必花太多精力在繁琐的配置上;Spring Cloud 则是另一种产品, 它是由多个微服务组装而成的一套分布式系统。如果把单个 Web 应用比作一件服装, 那么 Spring Cloud 就是一个成衣加工厂, 由许多不同的车间 (服务) 协同作业, 一起生产出一套完整的服装系列,在这个服装生产的过程中, 每个微服务就相当于车间里的一个工人或者机器, 负责生产某个特定的部件或服务,而 Spring Cloud 则提供了很多工具和组件, 协调各个工人合作无间, 保证整个流程的工作效率和生产质量。
关于 Spring MVC、Spring boot、Spring Cloud 的关联关系,可以这么理解:
1. Spring Boot 包含了 Spring MVC, 或者说 Spring Boot 项目内置了 Spring MVC 这个 Web 框架。Spring Boot 对 Spring MVC 进行了自动配置, 使开发者能够更高效便捷地构建基于 Spring MVC 的 Web 应用程序。
2.Spring Cloud 是构建在 Spring Boot 基础之上的, Spring Cloud 的大多数项目都是以 Spring Boot 应用程序的形式存在的。 Spring Cloud 利用了 Spring Boot 的自动配置特性, 进一步实现了分布式系统中所需的各种组件的自动化配置和管理。
3.Spring Cloud 并不直接依赖或包含 Spring MVC, 但是由于 Spring Cloud 是基于 Spring Boot 构建的, 而 Spring Boot 内置了 Spring MVC 框架, 所以开发基于 Spring Cloud 的分布式 Web 应用程序时, 通常也会基于 Spring MVC 来开发单体服务或微服务的 Web 层。

总的来说:

  • Spring MVC 作为 Web 框架的核心, 被包含在 Spring Boot 之中。
  • Spring Boot 应用程序是 Spring Cloud 微服务的载体形式。
  • Spring Cloud 通过集成 Spring Boot, 间接获得了对 Spring MVC 等其他 Spring 技术的支持能力。
标签: #软件开发 1171 #JAVA 991
相关文章

Spring 实现 3 种异步接口 2024-10-18 09:07

大家好,我是苏三~ 如何处理比较耗时的接口? 这题我熟,直接上异步接口,使用 Callable、WebAsyncTask 和 DeferredResult、CompletableFuture等均可实现。 但这些方法有局限性,处理结果仅返回单个值。在某些场景下,如果需要接口异步处理的同时,还持续不断地

重学SpringBoot3-集成Redis(五)之布隆过滤器 2024-10-08 11:24

更多SpringBoot3内容请关注我的专栏:《SpringBoot3》 期待您的点赞👍收藏⭐评论✍ 重学SpringBoot3-集成Redis(五)之布隆过滤器 1. 什么是布隆过滤器? * 基本概念 适用场景 2. 使用 Redis 实现布隆过滤器 * 项目依赖 Redis 配置

SpringBoot整合异步任务执行 2024-10-08 11:24

同步任务: 同步任务是在单线程中按顺序执行,每次只有一个任务在执行,不会引发线程安全和数据一致性等 并发问题 同步任务需要等待任务执行完成后才能执行下一个任务,无法同时处理多个任务,响应慢,影响用 户体验 异步任务: 异步任务是在多线程中同时执行,多个任务可以并发执行,同时处理多个请求,响应快,资源

springboot kafka多数据源,通过配置动态加载发送者和消费者 2024-10-08 11:24

前言 最近做项目,需要支持kafka多数据源,实际上我们也可以通过代码固定写死多套kafka集群逻辑,但是如果需要不修改代码扩展呢,因为kafka本身不处理额外逻辑,只是起到削峰,和数据的传递,那么就需要对架构做一定的设计了。 准备test kafka本身非常容易上手,如果我们需要单元测试,引入ja

SpringBoot 集成 Redis 2024-10-08 11:24

一:SpringBoot 集成 Redis ①Redis是一个 NoSQL(not only)数据库, 常作用缓存 Cache 使用。 ②Redis是一个中间件、是一个独立的服务器;常用的数据类型: string , hash ,set ,zset , list ③通过Redis客户端可以使用多种语

SpringBoot整合QQ邮箱 2024-10-08 11:24

SpringBoot可以通过导入依赖的方式集成多种技术,这当然少不了我们常用的邮箱,现在本章演示SpringBoot整合QQ邮箱发送邮件…. 下面按步骤进行: 1.获取QQ邮箱授权码 1.1 登录QQ邮箱 1.2 开启SMTP服务 找到下图中的SMTP服务区域,如果当前账号未开启的话自己手动开启。

目录

IT 外包服务商

  • 意见投递
  • zyf6619

软件开发应用

主菜单

  • 首页
  • 软件开发
  • 计算机基础
  • Hello Halo
  • 新手必读
  • 关于本知识库
Copyright © 2024 your company All Rights Reserved. Powered by Halo.