当前位置: 首页 > 图灵资讯 > 技术篇> 什么是springboot?

什么是springboot?

来源:图灵教育
时间:2023-07-02 17:09:18

注册、负载平衡等。这些开发都是在Spring。 在Boot的基础上进行封装。从这个角度来看,Spring Boot可以看作是Spring Cloud的基础。

那么什么是Spring呢? Boot 呢?

首先是Spring Boot是一种基于Spring开发的Spring生态下的快速开发解决方案,在Spring中 框架强调协议大于配置。因此,事实上,如果你想对spring有深入的了解 Boot的东西,首先要花点时间研究Spring 本博主还将在以后的分享内容中分享相关内容。

Spring Boot的起源

首先,让我们谈谈Spring。很久以前,许多公司在JavaEE标准下使用EJB容器作为主要的企业级软件开发方案。当时,EJB是Java企业级开发的内容。

EJB提供了一种组件模式,开发人员只需要关注业务,而不需要关注具体的底层实现,如远程呼叫、事务管理等,但问题是EJB的侵入性太强,导致整个系统的使用效率很低。迫使开发人员考虑如何开发一个新的解决方案。

在之前的分享中提到了Spring 组织只有在发现这个东西没有可替代的解决方案时才会考虑自己开发新的内容。因此,Java出现了 Springee企业级解决方案 框架。

什么是springboot?_spring

Spring 框架是一个轻量级框架,其主要目的是简化JavaEE企业的应用开发。为了实现这一目标,IOC主要采用了两种技术 和AOP。经过不断的发展,Spring 合理封装整合JavaEE开发中常用的技术,使其能够快速适应企业级开发的解决方案。例如,Spring出现 MVC是替代Struts2的解决方案,Spring 整合 Mybatis取代了Hibernate框架等内容。

Spring IOC/DI

IOC(Inversion of Control)和DI(Dependency Injection)全称分别是控制反转和依赖注入,如何理解这里的两个概念?

IOC

IOC(控制反转)实际上是将对象的生命周期委托给Spring容器进行管理,反转意味着从给定模式到获取模式,获取对象的方式被逆转。

什么是springboot?_spring_02

也就是说,当对象托管到Spring时 在容器中,客户端在使用对象时,不需要通过New创建对象,可以直接从容器中获取和使用所需的内容。如下图所示。

什么是springboot?_spring_03

DI

DI(Dependency Inject),依赖注入。简单的理解是,容器在运行过程中动态地将某种依赖关系注入组件中。

什么是springboot?_spring_04

有三种方法可以实现依赖注入

  • 接口注入
  • 注入结构方法
  • 注入setter方法
Bean 升级装配模式

基于XML配置的方法可以很好地完成生命周期的描述和管理,但随着项目的增加,XML配置的方式越来越多,相应的配置文件也越来越多,因此整个配置文件的管理将增加项目的维护成本。此外,随着业务关系的复杂性,配置文件的依赖性将变得复杂,因此为了解决这个问题 Spring从2.x开始时,Bean可以通过注释进行声明和注入,即可以通过配置类注入,从而减少配置文件的XML数量。因此,有两种声音,无论是Spring注释配置类还是XML配置文件。

从Spring开始 3.x Java配置类开始提供,它可以完全取代XML配置文件,并通过Java代码注入Bean对象。

从XML到@configuration的变化是开发效率的提高。Spring也支持新的解决方案 Boot的诞生。

Spring Boot的价值

SpringBoot不是一种新的技术架构,而是通过包装来简化Spring 开发人员只需通过少量代码创建产品级Spring 因公。这也证实了Spring的协议优于配置的核心思想。

如何理解协议优于配置的思想?

协议配置是软件设计的标准,旨在减少配置数量,提高开发效率。这不是一个新想法。

Spring Boot 协议优于配置的思想主要体现在以下几个方面

  • Maven 约定目录结构
  • Spring Boot 约定默认配置
  • Spring MVC 的依赖
  • 自动配置Starter组件

Spring Boot的核心

  • starter 组件提供开箱即用的解决方案
  • Bean的组装可以通过上下文环境自动完成
  • Actuator Spring Boot应用监控
  • Spring Boot CLI 用于命令行快速构建应用