Поделиться через


Руководство разработчика Azure Spring Cloud

Spring — это платформа приложений с открытым кодом, разработанная VMware, которая предоставляет упрощенный модульный подход для создания Java приложений. Spring Cloud Azure — это проект с открытым исходным кодом, который обеспечивает простую интеграцию Spring с Azure.

Дополнительные сведения о поддерживаемых версиях см. в разделе Сопоставления версийSpring.

Получение справки

Если у вас есть вопросы об этой документации, создайте проблему GitHub в одном из следующих репозиториев GitHub. Запросы на вытягивание также приветствуются.

репозитории GitHub Описание
Azure/azure-sdk-for-java Этот репозиторий содержит исходный код.
Azure-Samples/azure-spring-boot-samples Этот репозиторий содержит связанные примеры.
Документация MicrosoftDocs/azure-dev-docs Этот репозиторий содержит документацию.

Начало работы

Настройка зависимостей

Счет материалов (BOM)

Если вы используете Maven, добавьте BOM в файл pom.xml в разделе dependencyManagement, как показано в следующем примере. При использовании BOM вам не нужно указывать версии для любой из зависимостей Maven, так как управление версиями делегировано ВМ.

<dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>com.azure.spring</groupId>
      <artifactId>spring-cloud-azure-dependencies</artifactId>
      <version>7.0.0</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>
  </dependencies>
</dependencyManagement>

С помощью Gradle можно импортировать spring-cloud-azure-dependencies BOM следующим образом:

  • Используйте встроенную поддержку BOM Gradle, добавив зависимости, как показано в следующем примере:

    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 и импортируйте BOM в dependencyManagement, как показано в следующем примере:

    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.0.0.

Если вы используете Spring Boot 3.5.x, обязательно задайте версию spring-cloud-azure-dependencies на 6.1.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> разделе файла pom.xml. Это гарантирует, что все зависимости Spring Cloud Azure используют одну и ту же версию.

Дополнительные сведения о версии, используемой для этого BOM, см. в разделе Which Version of 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 Начало использования Azure Active Directory B2C с Spring Security.
spring-cloud-azure-starter-appconfiguration Начало использования Azure App Configuration.
spring-cloud-azure-starter-appconfiguration-config Начальный элемент для использования Azure App Configuration конфигурации.
spring-cloud-azure-starter-cosmos Начальный элемент для использования Azure Cosmos DB.
spring-cloud-azure-starter-eventhubs Начальный элемент для использования Azure Event Hubs.
spring-cloud-azure-starter-eventgrid Начальный элемент для использования Azure Event Grid.
spring-cloud-azure-starter-keyvault (стартер для Azure Key Vault на основе Spring Cloud) Начальный элемент для использования Azure Key Vault.
spring-cloud-azure-starter-keyvault-secret Начальный элемент для использования секретов Azure Key Vault.
spring-cloud-azure-starter-keyvault-jca Начало использования Azure Key Vault JCA.
spring-cloud-azure-starter-keyvault-certificates Начальный элемент для использования сертификатов Azure Key Vault.
spring-cloud-azure-starter-servicebus Начальный элемент для использования Azure Service Bus.
spring-cloud-azure-starter-servicebus-jms Начальный элемент для использования Azure Service Bus и JMS.
spring-cloud-azure-starter-storage Начальный элемент для использования Azure Storage.
spring-cloud-azure-starter-storage-blob Начальный элемент для использования Azure Storage BLOB-объекта.
spring-cloud-azure-starter-storage-file-share Начальный элемент для использования Azure Storage общей папки.
spring-cloud-azure-starter-storage-queue Начальный элемент для использования очереди Azure Storage.
spring-cloud-azure-starter-actuator Начальный элемент для использования Actuator Spring Boot, который предоставляет готовые к работе функции.

В следующей таблице перечислены начальные средства поддержки Spring Data:

Имя Описание
spring-cloud-azure-starter-data-cosmos Начало использования Spring Data для Azure Cosmos DB.

В следующей таблице перечислены начальные средства поддержки Spring Data Redis:

Имя Описание
spring-cloud-azure-starter-data-redis-lettuce Начало использования Spring Data и Azure Cache for Redis с Lettuce.

В следующей таблице перечислены начальные средства поддержки Spring Integration:

Имя Описание
spring-cloud-azure-starter-integration-eventhubs Начальный элемент для использования Azure Event Hubs и Spring Integration.
spring-cloud-azure-starter-integration-servicebus Начало использования Azure Service Bus и Spring Integration.
spring-cloud-azure-starter-integration-storage-queue Начальная версия для использования Azure Storage очереди и интеграции Spring.

В следующей таблице перечислены начальные средства поддержки Spring Cloud Stream:

Имя Описание
spring-cloud-azure-starter-stream-eventhubs Начало использования Azure Event Hubs и Spring Cloud Stream Binder.
spring-cloud-azure-starter-stream-servicebus Начало использования Azure Service Bus и Spring Cloud Stream Binder.

В следующей таблице перечислены начальные средства поддержки MySQL:

Имя Описание
spring-cloud-azure-starter-jdbc-mysql Начало использования Azure MySQLs и JDBC с помощью проверки подлинности Microsoft Entra.

В следующей таблице перечислены начальные средства поддержки PostgreSQL:

Имя Описание
«spring-cloud-azure-starter-jdbc-postgresql» Начало использования Azure PostgreSQL и JDBC с помощью проверки подлинности Microsoft Entra.

Обучение Spring Cloud Azure

Полный список примеров, показывающих использование, см. в разделе Spring Cloud Azure Samples.

Новые возможности версии 4.0 с 3.10.x

В этой документации рассматриваются изменения, внесенные в версии 4.0 с 3.10. Этот основной выпуск обеспечивает более высокую безопасность, более зависимые зависимости, поддержку готовности к работе и многое другое.

Кончик

Дополнительные сведения о миграции на 4.0 см. в руководстве по миграции 4.0.

В следующем списке приведены некоторые изменения, которые предоставляет Spring Cloud Azure 4.0:

  • Единый интерфейс разработки с унифицированным именем проекта, идентификатором артефакта и свойствами.
  • Упрощенное управление зависимостями с помощью одного spring-cloud-azure-dependencies BOM.
  • Развернутые Azure support на Spring Initializr для покрытия Kafka, Центров событий, Azure Cache for Redis и Azure App Configuration.
  • Переключение зависимостей модуля Spring для удаления избыточных слоев и запутанности.
  • Поддержка управляемых удостоверений для Azure App Configuration, Центров событий, Service Bus, Azure Cosmos DB, Key Vault, BLOB-объектов хранилища и очереди хранилища.
  • Постоянная поддержка методов проверки подлинности в базовой Azure SDK из библиотек Spring, таких как маркер SAS и проверка подлинности учетных данных маркера с помощью Service Bus и Центров событий.
  • Цепочка учетных данных теперь включена по умолчанию, позволяя приложениям получать учетные данные из свойств приложения, переменных среды, управляемых удостоверений, УДостоверений и т. д. Дополнительные сведения см. в разделе DefaultAzureCredential клиентской библиотеки Azure Identity для Java.
  • Детализированный контроль доступа на уровне ресурсов (например, Service Bus очереди), чтобы обеспечить более эффективное управление безопасностью и соблюдение ИТ-политик.
  • Дополнительные варианты, предоставляемые в идиоматических способах spring-idiomatic, благодаря улучшенному охвату автозаполнения клиентов Azure SDK для синхронных и асинхронных сценариев.
  • Добавлены индикаторы работоспособности для Azure App Configuration, Центров событий, Azure Cosmos DB, Key Vault, BLOB-объектов хранилища, очереди хранилища и файла хранилища.
  • Поддержка Spring Cloud Sleuth для всех Azure SDKs на основе HTTP.