首页 > 编程语言 >【Java】Spring、SpringBoot、SpringCloud理解和入门

【Java】Spring、SpringBoot、SpringCloud理解和入门

时间:2023-12-22 13:33:37浏览次数:38  
标签:Java SpringBoot 框架 Spring SpringCloud Cloud

关于Spring、SpringBoot、SpringCloud我总结了几点。

  • Spring是轻量级的容器框架,目前大多数项目不直接使用Spring的
  • SpringBoot是Spring的升级版,主要应用单个微服务,关联性小的项目、规模小、硬件要求不高的项目。
  • SpringCloud基于SpringBoot来实现微服务开发组件。主要应用于规模较大,需要多个微服务、硬件要求高的项目。
  • 学习Spring Cloud,需要学习Spring Cloud Alibaba (Spring Cloud二代),与Spring Cloud Netflix(Spring Cloud 一代核心思想相同)。

所以,对于目前来说,如果作为普通的Java程序员。我们只要专注于业务本身,不去溯本求源,先后学习SpringBoot和SpringCloud即可。毕竟,“吾生而有涯,而知也无涯”。用我有限的生命和智商,去追寻无限的知识,太难了(以有涯随无涯,殆已!)。题外话,每个人的能力大小不同,能够溯本求源,能够不断优化出新框架的人很厉害。就像汽车的设计师很强,我只能做汽车流水线上的工人,进着自己微薄之力。

下面,我们来更具体的了解一下Spring 、SpringBoot、SpringCloud框架。

Spring

 Spring 的框架图如下:

 说明:是一种轻量级的J2EE(企业开发应用程序)框架。最初是为了解决EJB开发笨重臃肿的问题(EJB属于分布式开发,大门中小型企业使用的是非分布式的项目)。消除繁琐的配置工作、让开发人员可以专注的有效的业务逻辑。

特点:轻量级、 低成本、安全、灵活。

应用场景:简单的进行一些中小型项目。适用于关联性小、规模小、硬件不高的项目。不过,由于SpringBoot默认了一些配置,让开发入门更简单。现在已经被SpringBoot替代。所以,近年的Java的培训班一般不讲这一块。

SpringBoot

SpringBoot框架图如下:

 说明: 是Spring的升级版,可以理解为SpringBoot是Spring的套件,同样,基于SpringBoot框架可以依赖注入和引入其他技术。SpringBoot提供了默认配置,从而简化了配置过程(之前课程的SSM整合,在大量不直接使用Spring后,已经消失在Java培训课程中)。所以,程序员的工作,可以更专注于业务逻辑中。

特点:轻量级、 低成本、安全、灵活。

应用场景:适用于关联性不强的单个微服务、规模小、硬件要求不高的项目。

SpringBoot确实更方便了。使用Spring框架时,就仿佛我们需要组装一台电脑,我必须先知道他的组成:主板、内存、CPU、硬盘、显卡、声卡、网卡、显示器、键盘、鼠标、电源……,然后把他们组装起来,才能使用。使用SpringBoot框架时,就好像我们直接买一台成品电脑、直接可以使用(默认配置)。后续需要加内存、把机械硬盘改为固态硬盘,就相当于SpringBoot中修改配置,只需要少量的工作(少量的代码)即可实现。所以,SpringBoot比Spring入门块,当然就能更快的登堂入室。

SpringCloud

SpringCloud框架图如下:

 说明:SpringCloud是基于SpringBoot来实现的微服务架构开发组件。简化了分布式分布式系统基础设施的开发(服务注册、配置中心、消息总线、负载均衡、断路由、数据监控等),可以用SpringBoot开发风格做到一键启动和部署。

SpringCloud没有重复制造论事,知识将各家公司开发的比较成熟、经得起考验的服务框架组合起来。屏蔽掉了复杂的配置和实现原理。它是一些框架的集合。

特点:简单易懂、易部署、易维护

应用场景:规模较大的、需要多个微服务、对硬件要求较高的项目。主要应用于分布式项目。

 

为什么还需要学习SpringCloud Alibaba?

原因:SpringCloud Netflix(一代)中的一些组件闭源了,不爱维护 而SpringCloud Alibaba(二代)吸收了Netflix的框架思想,并提高了性能。从2021年其,微服务的主力是Alibaba。核心思想不变,举一反三,学起来也并非难事。

参考

[1] https://baijiahao.baidu.com/s?id=1739317929327983505&wfr=spider&for=pc

标签:Java,SpringBoot,框架,Spring,SpringCloud,Cloud
From: https://www.cnblogs.com/luyj00436/p/17919318.html

相关文章

  • Spring学习记录之Spring概述
    Spring学习记录之Spring概述前言这篇文章是我第二次学习b站老杜的spring相关课程所进行的学习记录,算是对课程内容及笔记的二次整理,以自己的理解方式进行二次记录,其中理解可能存在错误,欢迎且接受各位大佬们的批评指正;关于本笔记,只是我对于相关知识遗忘时快速查阅了解使用,至于课......
  • vue3 + java 查询数据前后端时间不一致如何解决?
    环境:vue3+springboot+mybatis+mysql 场景:后端返回的时间与前端接收到的时间,小时不一致,时间格式是古巴标准时间:"CST"解决:在Entity中时间字段上增加注解:@JsonFormat(pattern="yyyy-MM-ddHH:mm:ss",timezone="GMT+8")......
  • 找到最佳优惠券组合!Java算法助力电商平台策略优化
    大家好,我是小米,一个热爱分享技术的小伙伴。最近我们电商平台迎来了一个新的需求,需要在用户下单时,高效地计算出多张平台券和店铺券的最优组合,使用户享受到最大的优惠。为了满足这一需求,我研究了一下动态规划和贪心算法,想和大家分享一下。需求背景在用户下单时,有时候我们会提供多张平......
  • java8实现分组、排序
    1、用户对象@Getter@Setter@AllArgsConstructorpublicclassUserTest{//名称privateStringuserName;//年龄privatestringage;//分数(这个无所谓啊)privatedoublescore;}2、准备数据List<UserTest>userList=newArrayList<>();......
  • Java8函数式编程应用
    我们经常提到,Java8是革命性的一个版本,原因就是正式引入了函数式编程,那Java的函数式编程在实际应用中到底有什么用呢?结合实际的应用,我整理出了函数式在Java的几个经典用途。  缓求值惰性求值(Lazy evaluation)是在需要时才进行求值的计算方式。惰性求值自然地在数据结构中包......
  • java 1.0的版本遗留 java.util.Hashtable为什么t要小写?
    实际上,Hashtable类是Java1.0版本就引入的,这是Java最早的版本之一。Hashtable是Java早期集合框架的一部分,那时还没有现在我们熟悉的java.util.Collection接口和后来的集合框架。Java1.2版本引入了新的集合框架,其中包含了诸如ArrayList,HashMap,和HashSet等现代......
  • SpringMVC处理Java8新日期类参数
    SpringMVC如何将request参数自动封装为LocalDate和LocalDateTime在使用SpringMVC时,java.util.Date类型字段可以使用@DateTimeFormat注解将application/x-www-from-urlencoded类型的请求中的字符串进行自动转换。而Java8中新的时间类型该如何支持呢?在application/x-www-from-u......
  • JavaScript中的instanceof运算符
    JavaScript中的instanceof运算符:https://blog.csdn.net/weixin_43263355/article/details/123551619?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522170320923016800197085509%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=170320......
  • Spring学习记录之Spring启示录
    Spring学习记录之Spring启示录前言这篇文章是我第二次学习b站老杜的spring相关课程所进行的学习记录,算是对课程内容及笔记的二次整理,以自己的理解方式进行二次记录,其中理解可能存在错误,欢迎且接受各位大佬们的批评指正;学习视频地址:https://www.bilibili.com/video/BV1Ft4y1g7......
  • 5分钟攻略Spring-Retry框架实现经典重试场景
    前言今天分享干货,控制了篇幅,5分钟内就能看完学会。主题是Spring-Retry框架的应用,做了一个很清晰的案例,代码可下载自测。框架介绍Spring-Retry框架是Spring自带的功能,具备间隔重试、包含异常、排除异常、控制重试频率等特点,是项目开发中很实用的一种框架。本篇所用框架的版本......