Spring 是由 VMware 開發的一個開源應用程式框架,提供簡化且模組化的方法來建立 Java 應用程式。 Spring Cloud Azure 是一個開源專案,提供與 Azure 無縫整合的 Spring。
欲了解更多支援版本資訊,請參閱 Spring Versions Mapping。
取得說明
如果你對這份文件有任何疑問,請在以下 GitHub 倉庫建立一個 GitHub 議題。 也歡迎提取要求。
| GitHub 倉庫 | 描述 |
|---|---|
Azure/azure-sdk-for-java |
此存放庫會保存原始程式碼。 |
Azure-Samples/azure-spring-boot-samples |
這個資料庫保存了相關樣本。 |
| MicrosoftDocs/azure-dev-docs | 此存放庫會保存檔。 |
開始
設定相依性
材料帳單(BOM)
如果您使用 Maven,請將 BOM 新增至 區段中的 dependencyManagement 檔案,如下列範例所示。 當您使用 BOM 時,不需要為任何 Maven 相依性指定版本,因為版本控制會委派給 BOM。
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.azure.spring</groupId>
<artifactId>spring-cloud-azure-dependencies</artifactId>
<version>7.2.0</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
使用 Gradle,您可以透過下列方式匯入 spring-cloud-azure-dependencies BOM:
透過新增相依關係,如以下範例所示,使用Gradle原生的BOM支援:
import org.springframework.boot.gradle.plugin.SpringBootPlugin plugins { id("java") id("org.springframework.boot") version "4.0.1" } dependencies { implementation(platform(SpringBootPlugin.BOM_COORDINATES)) implementation(platform("com.azure.spring:spring-cloud-azure-dependencies:{version}")) }使用
io.spring.dependency-management外掛程式,並在dependencyManagement中匯入 BOM,如下列範例所示:plugins { id("io.spring.dependency-management") version "1.1.7" } dependencyManagement { imports { mavenBom("com.azure.spring:spring-cloud-azure-dependencies:{version}") } }
如需詳細資訊,請參閱 Spring Boot Gradle 外掛程式參考指南。
注意
如果你用的是 Spring Boot 4.0.x,記得把版本設 spring-cloud-azure-dependencies 為 7.2.0.
如果你用的是 Spring Boot 3.5.x,記得把版本設 spring-cloud-azure-dependencies 成 6.2.0。
如果你使用的是 Spring Boot 3.1.x-3.5.x,記得把版本設 spring-cloud-azure-dependencies 為 5.25.0.
如果您使用 Spring Boot 2.x,請務必將 spring-cloud-azure-dependencies 版本設定為 4.20.0。
此材料帳單 (BOM) 應該在 <dependencyManagement> 檔案的 區段中設定。 這確保所有 Spring Cloud Azure 相依都使用相同的版本。
欲了解更多關於本物料清單所用版本的資訊,請參見 Spring Cloud Azure 應該使用哪個版本。
入門相依性
Spring Cloud Azure Starters 是一組方便的相依性描述符,可以納入你的應用程式中。 每個起始程式都包含開始使用其對應 Spring Cloud Azure 模組所需的所有相依與傳遞依賴。 這些入門工具能提升你的 Spring Boot 應用程式開發,並搭配 Azure 服務。
舉例來說,如果你想開始使用 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 |
The starter for using Azure Active Directory B2C with Spring Security. |
spring-cloud-azure-starter-appconfiguration |
The starter for using Azure 應用程式組態. |
spring-cloud-azure-starter-appconfiguration-config |
The starter for using Azure 應用程式組態 Config. |
spring-cloud-azure-starter-cosmos |
The starter for using Azure Cosmos DB. |
spring-cloud-azure-starter-eventhubs |
The starter for using Azure 事件中樞. |
spring-cloud-azure-starter-eventgrid |
使用 Azure 事件方格 的起始器。 |
spring-cloud-azure-starter-keyvault |
使用 Azure Key Vault 的起始工具。 |
spring-cloud-azure-starter-keyvault-secrets |
使用 Azure Key Vault Secrets 的起始碼。 |
spring-cloud-azure-starter-keyvault-jca |
The starter for using Azure Key Vault JCA. |
spring-cloud-azure-starter-keyvault-certificates |
使用 Azure Key Vault Certificates 的起始工具。 |
spring-cloud-azure-starter-servicebus |
The starter for using 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 儲存體 Queue 的起始工具。 |
spring-cloud-azure-starter-actuator |
這是使用 Spring Boot 執行器時的起始工具,提供生產準備的功能。 |
下表列出 Spring Data 支援的入門:
| 名字 | 描述 |
|---|---|
spring-cloud-azure-starter-data-cosmos |
The starter for using Spring Data for Azure Cosmos DB. |
下表列出支援 Spring Data Redis 的先發球員:
| 名字 | 描述 |
|---|---|
spring-cloud-azure-starter-data-redis-lettuce |
The starter for using Spring Data and Azure Cache for Redis with Lettuce. |
下表列出 Spring Integration 支援的入門:
| 名字 | 描述 |
|---|---|
spring-cloud-azure-starter-integration-eventhubs |
The starter for using Azure 事件中樞 and Spring Integration. |
spring-cloud-azure-starter-integration-servicebus |
用 Azure 服務匯流排 和 Spring Integration 的起始程式。 |
spring-cloud-azure-starter-integration-storage-queue |
這是使用 Azure 儲存體 Queue 和 Spring Integration 的起始工具。 |
下表列出 Spring Cloud Stream 支援的入門:
| 名字 | 描述 |
|---|---|
spring-cloud-azure-starter-stream-eventhubs |
The starter for using Azure 事件中樞 and Spring Cloud Stream Binder. |
spring-cloud-azure-starter-stream-servicebus |
The starter for using Azure 服務匯流排 and Spring Cloud Stream Binder. |
下表列出 MySQL 支援的入門:
| 名字 | 描述 |
|---|---|
spring-cloud-azure-starter-jdbc-mysql |
這是使用 Azure MySQL 和 JDBC 透過 Microsoft Entra 認證的起始工具。 |
下表列出 PostgreSQL 支援的入門:
| 名字 | 描述 |
|---|---|
spring-cloud-azure-starter-jdbc-postgresql |
這是使用 Azure PostgreSQL 和 JDBC 透過 Microsoft Entra 認證的起始工具。 |
Learning Spring Cloud Azure
欲查看完整使用樣本清單,請參見 Spring Cloud Azure Samples。
自 3.10.x 起的 4.0 新功能
本文件涵蓋自 3.10 以來 4.0 所做的變更。 此主要版本提供更佳的安全性、更精簡的相依性、生產整備支援等等。
提示
如需移轉至 4.0 的詳細資訊,請參閱 4.0的
以下列表總結了 Spring Cloud Azure 4.0 提供的一些變更:
- 具有統一項目名稱、成品標識碼和屬性的整合開發體驗。
- 使用單一
spring-cloud-azure-dependenciesBOM 簡化相依性管理。 - 在 Spring Initializr 上擴展Azure 支援,涵蓋 Kafka、Event Hubs、Azure Cache for Redis 和 Azure 應用程式組態。
- 重新架構 Spring 模組相依性,以移除多餘的層和糾纏。
- Managed Identity 支援 Azure 應用程式組態、Event Hubs、服務匯流排、Azure Cosmos DB、金鑰保存庫、Storage Blob 同 Storage Queue.
- 持續支援我們 Spring 函式庫中底層 Azure SDK 的認證方法,例如 SAS 令牌及 服務匯流排 與事件集線器的令牌憑證認證。
- 認證鏈結現在預設會啟用,讓應用程式從應用程式屬性、環境變數、受控識別、IDE 等取得認證。 欲了解更多資訊,請參閱 Java
Azure Identity 客戶端函式庫中 DefaultAzureCredential 章節。 - 資源層級的細緻存取控制(如 服務匯流排 佇列),以促進更好的安全治理與 IT 政策的遵守。
- 透過改善 Azure SDK 用戶端的自動設定覆蓋,涵蓋同步與非同步情境,展現更多 Spring 特色的選項。
- 新增了 Azure 應用程式組態、Event Hubs、Azure Cosmos DB、金鑰保存庫、Storage Blob、Storage Queue 和 Storage File 的健康指標。
- Spring Cloud Sleuth 支援所有基於 HTTP 的 Azure SDK。