使用 Spring Boot 进行开发
本节将详细介绍如何使用 Spring Boot。内容涵盖构建系统、自动配置以及如何运行应用程序等主题。我们还将介绍一些 Spring Boot 的最佳实践。虽然 Spring Boot 并不特别特殊(它只是你可以使用的另一个库),但遵循一些建议可以使你的开发过程更加轻松。
如果你刚开始使用 Spring Boot,在深入本节内容之前,你可能应该先阅读 开发你的第一个 Spring Boot 应用 教程。
章节概述
📄️ 构建系统
强烈建议您选择一个支持依赖管理并且能够使用发布到 Maven Central 仓库的构件的构建系统。我们推荐您选择 Maven 或 Gradle。虽然可以让 Spring Boot 与其他构建系统(例如 Ant)一起工作,但它们并未得到特别好的支持。
📄️ 结构化你的代码
Spring Boot 并不要求特定的代码布局来工作。然而,有一些最佳实践可以帮助您更好地组织代码。
📄️ 配置类
Spring Boot 倾向于使用基于 Java 的配置。虽然可以使用 SpringApplication 与 XML 源一起使用,但我们通常建议您的主要配置源是一个单独的 @Configuration 类。通常,定义 main 方法的类是作为主要 @Configuration 类的良好候选。
📄️ 自动配置
Spring Boot 自动配置会根据你添加的 jar 依赖自动配置你的 Spring 应用程序。例如,如果你的类路径中有 HSQLDB,并且你没有手动配置任何数据库连接 Bean,那么 Spring Boot 会自动配置一个内存数据库。
📄️ Spring Beans 和依赖注入
你可以自由使用任何标准的 Spring Framework 技术来定义你的 Bean 及其注入的依赖项。我们通常建议使用构造函数注入来装配依赖项,并使用 @ComponentScan 来查找 Bean。
📄️ 使用 @SpringBootApplication 注解
许多 Spring Boot 开发者喜欢他们的应用程序使用自动配置、组件扫描,并能够在他们的“应用程序类”上定义额外的配置。一个单独的 @SpringBootApplication 注解可以用来启用这三个功能,即:
📄️ 运行你的应用程序
将应用程序打包为 JAR 文件并使用嵌入式 HTTP 服务器的最大优势之一是,您可以像运行其他应用程序一样运行它。该示例适用于调试 Spring Boot 应用程序。您不需要任何特殊的 IDE 插件或扩展。
📄️ 开发者工具
Spring Boot 包含了一套额外的工具,可以让应用程序的开发体验更加愉快。spring-boot-devtools 模块可以包含在任何项目中,以提供额外的开发时功能。要包含 devtools 支持,请将模块依赖项添加到构建中,如下面的 Maven 和 Gradle 列表所示:
📄️ 为生产环境打包您的应用程序
当您的 Spring Boot 应用程序准备好进行生产部署时,有许多打包和优化应用程序的选项。请参阅文档中的 Packaging Spring Boot Applications 部分,了解这些功能。