Spring Boot Tutorial

Spring Boot 教程

Spring Boot 是一个开源的基于 Java 的框架,用于创建微服务。它由 Pivotal 团队开发。使用 Spring Boot 很容易创建独立且可用于生产环境的 Spring 应用程序。Spring Boot 包含用于开发微服务的全面基础设施支持,并使您能够开发企业级应用程序,您可以“直接运行”

为什么要学习 Spring Boot?

Spring Boot 提供了广泛的功能和优势,如下所示:

  • 灵活性 - Spring Boot 提供多种灵活的方式来配置 Java Bean、XML 配置和数据库事务。

  • 强大的批处理 - Spring Boot 提供了一个强大的批处理机制。

  • 微服务支持 - 微服务是一种架构,允许开发人员独立开发和部署服务。每个运行的服务都有自己的进程,这实现了轻量级模型来支持业务应用程序。Spring Boot 提供了轻松开发和测试微服务的机制。

  • 自动配置 - 在 Spring Boot 中,所有内容都自动配置;无需手动配置。

  • 基于注解 - 在 Spring Boot 中,我们只需使用很少的注解即可创建一个运行的应用程序。

  • 简化依赖管理 - Spring Boot 根据需要提供了许多启动器,例如用于 Web、用于数据库等,以有效地处理依赖项。启动器项目为相应的功能提供依赖项管理。

  • 嵌入式 Servlet 容器 - Spring Boot 提供了一个嵌入式 Servlet 容器(jetty),也可以更改。此容器在测试应用程序时非常有用。我们可以在不将 Spring Boot 应用程序部署到任何外部应用程序容器的情况下测试所有功能。

Spring Boot 的应用

以下是使用 Spring Boot 框架的一些主要优势:

  • 基于 POJO - Spring Boot 使开发人员能够使用 POJO 开发企业级应用程序。仅使用 POJO 的好处是您不需要 EJB 容器产品(例如应用程序服务器),但您可以选择仅使用健壮的 Servlet 容器(例如 Tomcat)或某些商业产品。

  • 模块化 - Spring Boot 本质上是模块化的。尽管包和类的数量很大,但您只需关注您需要的那些,而忽略其余的。

  • 与现有框架集成 - Spring Boot 并没有重新发明轮子,而是真正利用了一些现有技术,例如几个 ORM 框架、日志框架、JEE、Quartz 和 JDK 定时器以及其他视图技术。

  • 可测试性 - 使用 Spring Boot 编写的应用程序非常容易测试,因为依赖于环境的代码已移至此框架中。此外,通过使用 Java Bean 样式的 POJO,可以更轻松地使用依赖注入来注入测试数据。

  • Web MVC - Spring Boot 的 Web 框架是一个设计良好的 Web MVC 框架,它为 Struts 或其他过度设计或不太流行的 Web 框架提供了极好的替代方案。

  • 集中异常处理 - Spring Boot 提供了一个方便的 API 来将特定于技术的异常(例如由 JDBC、Hibernate 或 JDO 引发的异常)转换为一致的未经检查的异常。

  • 轻量级 - 与例如 EJB 容器相比,轻量级 IoC 容器往往更轻量级。这有利于在内存和 CPU 资源有限的计算机上开发和部署应用程序。

  • 事务管理 - Spring Boot 提供了一个一致的事务管理接口,可以缩减到本地事务(例如使用单个数据库)并扩展到全局事务(例如使用 JTA)。

Spring Boot 的目标

Spring Boot 的设计目标如下:

  • 更简单的配置 - 避免 Spring 中复杂的 XML 配置。使用很少的注解,我们就可以实现相同的配置。

  • 易于开发 - 以更简单的方式开发可用于生产环境的 Spring 应用程序。

  • 减少开发工作量 - 减少开发时间并独立运行应用程序。

  • 轻松部署 - 通过提供嵌入式应用程序容器来在本地测试应用程序,从而提供更简单的入门方式。

受众

本教程旨在帮助 Java 开发人员理解和开发具有最少配置的可用于生产环境的 Spring 应用程序。它探讨了 Spring Boot 的主要功能,例如启动器、自动配置、Bean、执行器等。在本教程结束时,您将获得 Spring Boot 中级水平的专业知识。

先决条件

本教程面向具有 Java、Spring、Maven 和 Gradle 经验的读者。如果您了解这些概念,则可以轻松理解 Spring Boot 的概念。如果您了解如何编写 RESTful Web 服务,那将是一个额外的优势。如果您是初学者,我们建议您在开始使用 Spring Boot 之前先学习与这些概念相关的教程。

广告