📜  Spring Boot 简介

📅  最后修改于: 2022-05-13 01:54:44.437000             🧑  作者: Mango

Spring Boot 简介

Spring 广泛用于创建可扩展的应用程序。对于 Web 应用程序 Spring 提供
Spring MVC 是一个广泛使用的 Spring 模块,用于创建可扩展的 Web 应用程序。
Spring 项目的主要缺点是配置非常耗时,对于新开发人员来说可能有点不知所措。如果您是春季新手,则使应用程序可以投入生产需要一些时间。

解决方案是Spring Boot 。 Spring Boot 建立在 Spring 之上,包含了 Spring 的所有特性。并且现在正成为开发人员的最爱,因为它是一个快速的生产就绪环境,使开发人员能够直接专注于逻辑,而不是为配置和设置而苦苦挣扎。

Spring Boot 是一个基于微服务的框架,在其中制作可用于生产的应用程序所需的时间非常少。
Spring Boot的先决条件是Spring框架的基础知识。
要修改 spring 框架的概念,请阅读这篇文章。

Spring Boot 的特点

Spring Boot 建立在传统的 Spring 框架之上。因此,它提供了 spring 的所有功能,并且比 spring 更易于使用。

  • 它允许避免在 spring 中出现的 XML 的繁重配置:
    与 Spring MVC 项目不同,在 Spring Boot 中,一切都是自动配置的。我们只需要使用适当的配置来利用特定的功能。

    例如:如果我们想使用hibernate(ORM),那么我们可以在模型/实体类(稍后讨论)之上添加@Table注解,并添加@Column注解将其映射到数据库中的表和列

  • 它提供了轻松维护和创建 REST 端点:
    在 Spring Boot 中创建 REST API 非常容易。只需控制器类上的注释@RestController@RequestMapping(/endPoint) 即可完成工作。
  • 它包括嵌入式 Tomcat 服务器:

    与我们必须手动添加和安装 tomcat 服务器的 Spring MVC 项目不同,Spring Boot 带有一个嵌入式 Tomcat 服务器,因此可以在其上托管应用程序。

  • 部署很简单,war和jar文件可以很方便的部署在tomcat服务器上:
    warjar文件可以直接部署在 Tomcat 服务器上,Spring Boot 提供了将我们的项目转换为 war 或 jar 文件的工具。此外,Tomcat 的实例也可以在云上运行。
  • 基于微服务的架构:
    顾名思义,微服务是一个模块/服务的名称,它专注于单一类型的功能,公开一个 API(应用程序外围接口)。

    让我们考虑一个医院管理系统的例子。

    • 在单体系统的情况下,将有一个包含所有功能的单一代码,这些功能很难大规模维护。
    • 但是在基于微服务的系统中,每个功能都可以划分为更小的子系统,例如处理患者登记的服务、处理数据库管理的服务、处理计费的服务等。

    基于微服务的系统可以轻松迁移,因为只需要更改一些服务,这也使得调试和部署变得容易。此外,每项服务都可以集成,并且可以采用适合它们的不同技术进行制作。

Spring Boot 的演变

  1. Spring Boot 诞生于 2012 年 10 月,客户Mike Youngstrom提出 Jira 请求,要求引导 Spring 框架以便快速启动。因此在 2013 年初,Spring Boot 诞生了。
  2. 2014 年 4 月,Spring Boot 1.0创建,随后出现了各种版本。
  3. 2014 年 6 月的 Spring Boot 1.1
  4. 1.2 2015 年 3 月,
  5. 1.3 2016 年 12 月,
  6. 2017 年 1 月的1.4
  7. 2017 年 2 月发布的 Spring Boot 1.5

Spring Boot 架构

要了解 Spring Boot 的架构,让我们首先看看其中存在的不同层和类。

  • Spring Boot 中的层:Spring Boot中有四个主要层:
    • 表示层:顾名思义,它由视图组成(即前端部分)
    • 数据访问层:对数据库的 CRUD(创建、检索、更新、删除)操作属于此类。
    • 服务层:这由服务类组成,并使用数据访问层提供的服务。
    • 集成层:它由网络不同的网络服务(互联网上可用的任何服务并使用 XML 消息系统)组成。
  • 然后我们有实用程序类、验证器类和视图类。
  • 类提供的所有服务都在其相应的类中实现,并通过实现对这些接口的依赖项来检索。

Spring Boot 流程架构

  • 由于 Spring boot 使用了 Spring-like Spring data、Spring MVC 等的所有特性/模块,因此架构几乎与 Spring MVC 相同,只是 Spring boot 中不需要DAODAOImpl 类
  • 创建数据访问层只需要一个存储库类,而不是实现包含类的 CRUD 操作。
  • 客户端发出 https 请求(PUT/GET)
  • 然后它转到控制器,并且映射到该路由的控制器作为请求处理它,并在需要时调用服务逻辑。
  • 业务逻辑在服务层中执行,该层可能正在对数据库中的数据执行逻辑,该数据库通过 JPA 与模型/实体类进行映射
  • 最后,如果没有发生错误,则在响应中返回一个 JSP 页面。

设置 Spring Boot:

  1. 从 Oracle 的官方站点设置Java JDK。
  2. 下载并设置 STS(Spring 工具套件)。
  3. 开始一个新的spring starter项目
    • 单击文件 -> 新建 -> Spring 启动项目
    • 填写适当的详细信息并添加依赖项并完成。
    • 编辑应用程序属性。
    • 将主文件作为Java应用程序运行。