Spring Cloud Azure 开发人员指南
本文适用于: ✔️版本 4.14.0 ✔️ 版本 5.8.0
Spring 是 VMware 开发的开源应用程序框架,它提供简化的模块化方法来创建 Java 应用程序。 Spring Cloud Azure 是一个开源项目,提供与 Azure 的无缝 Spring 集成。
有关支持的版本的详细信息,请参阅 Spring Versions Mapping。
获取帮助
如果对此文档有任何疑问,请在以下 GitHub 存储库之一中创建 GitHub 问题。 也欢迎提交拉取请求。
GitHub 存储库 | 说明 |
---|---|
Azure/azure-sdk-for-java | 此存储库保存源代码。 |
MicrosoftDocs/azure-dev-docs | 此存储库保存文档。 |
自 3.10.x 以来的 4.0 中的新增功能
本文档介绍自 3.10 以来 4.0 中所做的更改。 此主要版本带来了更好的安全性、更精简的依赖项、对生产准备的支持等。
提示
有关迁移到 4.0 的详细信息,请参阅 4.0 的迁移指南。
以下列表总结了 Spring Cloud Azure 4.0 提供的一些更改:
- 具有统一项目名称、项目 ID 和属性的统一开发体验。
- 使用单个
spring-cloud-azure-dependencies
BOM 简化了依赖项管理。 - 在 Spring Initializr 上展开Azure 支持,以涵盖 Kafka、事件中心、Azure Redis 缓存和Azure 应用程序配置。
- 重新架构 Spring 模块依赖项以删除多余的层和纠缠。
- 托管标识支持Azure 应用程序配置、事件中心、服务总线、Azure Cosmos DB、密钥库、存储 Blob 和存储队列。
- 继续支持 Spring 库中的基础 Azure SDK 中的身份验证方法,例如使用 服务总线 和事件中心进行 SAS 令牌和令牌凭据身份验证。
- 凭据链现已默认启用,使应用程序能够从应用程序属性、环境变量、托管标识、IDE 等获取凭据。 有关详细信息,请参阅适用于 Java 的 Azure 标识客户端库的 DefaultAzureCredential 部分。
- 在资源级别(如服务总线队列)进行精细访问控制,以便更好地管理安全并遵守 IT 策略。
- 通过显著改进了同步和异步方案的 Azure SDK 客户端的自动配置覆盖,在 Spring-idiomatic 中公开了更多选项。
- 添加了Azure 应用程序配置、事件中心、Azure Cosmos DB、密钥库、存储 Blob、存储 队列和存储文件的运行状况指示器。
- Spring Cloud Sleuth 支持所有基于 HTTP 的 Azure SDK。
4.0 迁移指南
有关迁移到 4.0 的详细信息,请参阅 4.0 的迁移指南。
使用入门
设置依赖项
物料清单 (BOM)
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.azure.spring</groupId>
<artifactId>spring-cloud-azure-dependencies</artifactId>
<version>4.14.0</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
注意
如果使用 Spring Boot 3.x,请确保将 spring-cloud-azure-dependencies
版本设置为 5.8.0
。
有关该 spring-cloud-azure-dependencies
版本的详细信息,请参阅 我应使用哪个版本的 Spring Cloud Azure。
初学者依赖项
Spring Cloud Azure Starters 是一组方便的依赖项描述符,可包含在应用程序中。 每个初学者都包含开始使用其相应的 Spring Cloud Azure 模块所需的所有依赖项和可传递依赖项。 这些初学者通过 Azure 服务提升 Spring Boot 应用程序开发。
例如,如果要开始使用 Spring 和 Azure Cosmos DB 进行数据暂留,请在 spring-cloud-azure-starter-cosmos
项目中包括依赖项。
下表列出了 Spring Cloud Azure 在组下 com.azure.spring
提供的应用程序初学者:
名称 | 描述 |
---|---|
spring-cloud-azure-starter | 核心初学者,包括自动配置支持。 |
spring-cloud-azure-starter-active-directory | 将 Microsoft Entra ID 与 Spring Security 配合使用的入门。 |
spring-cloud-azure-starter-active-directory-b2c | 将 Azure Active Directory B2C 与 Spring Security 配合使用的入门。 |
spring-cloud-azure-starter-appconfiguration | 使用Azure 应用程序配置的初学者。 |
spring-cloud-azure-starter-cosmos | 使用 Azure Cosmos DB 的入门方法。 |
spring-cloud-azure-starter-eventhubs | 使用Azure 事件中心的初学者。 |
spring-cloud-azure-starter-keyvault | 用于使用 Azure 密钥库的初学者。 |
spring-cloud-azure-starter-keyvault-secrets | 使用 Azure 密钥库 机密的入门方法。 |
spring-cloud-azure-starter-keyvault-certificates | 使用 Azure 密钥库 证书的初学者。 |
spring-cloud-azure-starter-servicebus | 使用Azure 服务总线的初学者。 |
spring-cloud-azure-starter-servicebus-jms | 使用 Azure 服务总线 和 JMS 的初学者。 |
spring-cloud-azure-starter-storage | 使用Azure 存储的初学者。 |
spring-cloud-azure-starter-storage-blob | 使用 Azure 存储 Blob 的初学者。 |
spring-cloud-azure-starter-storage-file-share | 使用Azure 存储文件共享的初学者。 |
spring-cloud-azure-starter-storage-queue | 使用Azure 存储队列的初学者。 |
spring-cloud-azure-starter-initialize | 使用 Spring Boot 的执行器入门,它提供了生产就绪的功能。 |
下表列出了 Spring Data 支持的初学者:
名称 | 描述 |
---|---|
spring-cloud-azure-starter-data-cosmos | 用于 Azure Cosmos DB 的 Spring Data 入门。 |
下表列出了 Spring Integration 支持的初学者:
名称 | 描述 |
---|---|
spring-cloud-azure-starter-integration-eventhubs | 使用 Azure 事件中心 和 Spring Integration 的初学者。 |
spring-cloud-azure-starter-integration-servicebus | 使用 Azure 服务总线 和 Spring Integration 的初学者。 |
spring-cloud-azure-starter-integration-storage-queue | 使用Azure 存储队列和 Spring 集成入门。 |
下表列出了 Spring Cloud Stream 支持的初学者:
名称 | 描述 |
---|---|
spring-cloud-azure-starter-stream-eventhubs | 使用 Azure 事件中心 和 Spring Cloud Stream Binder 的初学者。 |
spring-cloud-azure-starter-stream-servicebus | 使用 Azure 服务总线 和 Spring Cloud Stream Binder 的初学者。 |
下表列出了 MySQL 支持的初学者:
名称 | 描述 |
---|---|
spring-cloud-azure-starter-jdbc-mysql | 通过 Microsoft Entra 身份验证使用 Azure MySQLs 和 JDBC 的入门方法。 |
下表列出了 PostgreSQL 支持的初学者:
名称 | 描述 |
---|---|
spring-cloud-azure-starter-jdbc-postgresql | 通过 Microsoft Entra 身份验证使用 Azure PostgreSQL 和 JDBC 的初学者。 |
学习 Spring Cloud Azure
我们准备了一个完整的示例列表来显示使用情况。 可以在 Spring Cloud Azure 示例中找到 这些示例。