使用 Spring Boot 开发
本节将更详细地介绍如何使用 Spring Boot。内容涵盖构建系统、自动配置以及如何运行应用程序等主题。我们还介绍了一些 Spring Boot 的最佳实践。尽管 Spring Boot 本身并没有什么特别之处(它只是你可以使用的另一个库),但遵循一些建议可以让您的开发过程更加轻松。
如果你刚开始使用 Spring Boot,在深入本节之前,建议先阅读 开发你的第一个 Spring Boot 应用程序 教程。
章节总结
📄️ 构建系统
强烈建议你选择一个支持依赖管理、并且能够使用发布到 Maven Central 仓库的构件的构建系统。我们推荐你选择 Maven 或 Gradle。虽然也可以让 Spring Boot 与其他构建系统(例如 Ant)一起工作,但它们并没有得到特别好的支持。
📄️ 组织你的代码
Spring Boot 不需要任何特定的代码布局即可工作。然而,有一些最佳实践会有所帮助。
📄️ 配置类
Spring Boot 倾向于使用基于 Java 的配置。尽管可以使用 XML 源文件配合 SpringApplication,但我们通常建议你的主配置源为一个单独的 @Configuration 类。通常,定义 main 方法的类是作为主 @Configuration 的良好候选者。
📄️ 自动配置
Spring Boot 自动配置会根据你添加的 jar 依赖自动配置你的 Spring 应用。例如,如果 HSQLDB 在你的 classpath 中,并且你没有手动配置任何数据库连接 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 应用程序准备好进行生产部署,就有许多选项可用于打包和优化应用程序。请参阅文档中的《打包 Spring Boot 应用程序》部分,以了解这些功能。