Spring Cloud Azure geliştirici kılavuzu

Spring Cloud Azure, Spring Boot uygulamalarını Azure hizmetleriyle tümleştirir. Bu geliştirici kılavuzunda bağımlılıkların nasıl yönetileceği, yeni başlayanlar nasıl seçileceği ve uygulama geliştirme Java hızlandırmak için örneklerin nasıl kullanılacağı açıklanmaktadır.

Desteklenen sürümler hakkında daha fazla bilgi için bkz. Spring Sürümleri Eşleme.

Yardım alın

Bu belgeler hakkında sorularınız varsa aşağıdaki GitHub depolarından birinde GitHub bir sorun oluşturun. Pull request'ler de memnuniyetle karşılanır.

GitHub depoları Açıklama
Azure/azure-sdk-for-java Bu depo kaynak kodu barındırıyor.
Azure-Samples/azure-spring-boot-samples Bu depo, ilgili örnekleri barındırır.
MicrosoftDocs/azure-dev-docs Bu depoda belgeler bulunur.

Başlarken

Bağımlılıkları kurma

Malzeme Listesi (BOM)

Maven kullanıyorsanız, aşağıdaki örnekte gösterildiği gibi BOM'u pom.xml dosyanızdaki dependencyManagement bölümüne ekleyin. BOM’u kullandığınızda, sürümleri BOM yönettiği için Maven bağımlılıklarının herhangi biri için sürüm belirtmeniz gerekmez.

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

Gradle ile spring-cloud-azure-dependencies BOM'u aşağıdaki yollarla içeri aktarabilirsiniz:

  • Aşağıdaki örnekte gösterildiği gibi bağımlılıkları ekleyerek Gradle'ın yerleşik BOM desteğini kullanın.

    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 eklentisini kullanın ve aşağıdaki örnekte gösterildiği gibi BOM’u dependencyManagement içine aktarın.

    plugins {
        id("io.spring.dependency-management") version "1.1.7"
    }
    
    dependencyManagement {
        imports {
            mavenBom("com.azure.spring:spring-cloud-azure-dependencies:{version}")
        }
    }
    

Daha fazla bilgi için bkz. Spring Boot Gradle Eklentisi Başvuru Kılavuzu.

Not

Spring Boot 4.0.x kullanıyorsanız, spring-cloud-azure-dependencies sürümünü 7.4.0 olarak ayarlayın.

Spring Boot 3.5.x kullanıyorsanız, sürümü spring-cloud-azure-dependencies olarak ayarlayın 6.5.0.

Spring Boot 3.1.x-3.5.x kullanıyorsanız, spring-cloud-azure-dependencies sürümünü 5.25.0 olarak ayarladığınızdan emin olun.

Eğer Spring Boot 2.x kullanıyorsanız, spring-cloud-azure-dependencies sürümünü 4.20.0 olarak ayarladığınızdan emin olun.

Bu Parça Listesi (BOM), <dependencyManagement> bölümünde pom.xml dosyanızda yapılandırılmalıdır. Bu, tüm Spring Cloud Azure bağımlılıklarının aynı sürümü kullanmasını sağlar.

Bu BOM için kullanılan sürüm hakkında daha fazla bilgi edinmek için bkz. Spring Cloud Azure’nun hangi sürümünü kullanmalıyım.

Başlangıç bağımlılıkları

Spring Cloud Azure Starters, uygulamanıza dahil etmek için kullanışlı bağımlılık tanımlayıcıları kümesidir. Her başlatıcı, karşılık gelen Spring Cloud Azure modülünü kullanmaya başlamak için gereken tüm bağımlılıkları ve geçişli bağımlılıkları içerir. Bu başlatıcılar, Azure hizmetleriyle Spring Boot uygulama geliştirmenizi artırır.

Örneğin, veri kalıcılığı için Spring ve Azure Cosmos DB kullanmaya başlamak istiyorsanız projenize spring-cloud-azure-starter-cosmos bağımlılığını ekleyin.

Aşağıdaki tabloda, com.azure.spring grubu altında Spring Cloud Azure tarafından sağlanan uygulama başlangıçları listelenir:

Ad Açıklama
spring-cloud-azure-starter Otomatik yapılandırma desteği dahil olmak üzere temel başlatıcı.
spring-cloud-azure-starter-active-directory Spring Security ile Microsoft Entra ID kullanmak için başlangıç paketi.
spring-cloud-azure-starter-active-directory-b2c Spring Security ile Azure Active Directory B2C'yi kullanmaya yönelik başlangıç.
spring-cloud-azure-starter-appconfiguration Azure Uygulama Yapılandırması kullanmaya başlama
spring-cloud-azure-starter-appconfiguration-config Azure Uygulama Yapılandırması Yapılandırması'nı kullanmaya yönelik başlangıç.
spring-cloud-azure-starter-cosmos Azure Cosmos DB kullanmaya başlama kılavuzu.
spring-cloud-azure-starter-eventhubs Azure Event Hubs kullanmaya başlama.
spring-cloud-azure-starter-eventgrid Azure Event Grid'i kullanmaya başlama.
spring-cloud-azure-starter-keyvault Azure Key Vault’u kullanmaya başlama
spring-cloud-azure-starter-keyvault-secrets Azure Key Vault Gizli Anahtarlarını kullanmaya başlama.
spring-cloud-azure-starter-keyvault-jca Azure Key Vault JCA kullanmaya başlama.
spring-cloud-azure-starter-keyvault-certificates Azure Key Vault Sertifikalarını kullanmaya yönelik başlangıç.
spring-cloud-azure-starter-servicebus Azure Service Bus’ı kullanmaya başlama.
spring-cloud-azure-starter-servicebus-jms Azure Service Bus ve JMS'yi kullanmaya yönelik başlangıç.
spring-cloud-azure-starter-storage Azure Depolama kullanmaya başlamak için başlangıç noktası.
spring-cloud-azure-starter-storage-blob Azure Depolama Blobu kullanmaya yönelik başlangıç.
spring-cloud-azure-starter-storage-file-share Azure Depolama Dosya Paylaşımı'nı kullanmaya yönelik başlangıç.
spring-cloud-azure-starter-storage-queue Azure Depolama Kuyruğu'nı kullanmaya yönelik başlangıç.
spring-cloud-azure-starter-actuator Üretime hazır özellikler sunan Spring Boot Actuator’ünü kullanmak için başlatıcı.

Aşağıdaki tablo, Spring Data desteği için starter’ları listeler:

Ad Açıklama
spring-cloud-azure-starter-data-cosmos Azure Cosmos DB için Spring Data'nın kullanımına yönelik başlangıç.

Aşağıdaki tabloda Spring Data Redis desteği için başlangıç bilgileri listelemektedir:

Ad Açıklama
spring-cloud-azure-starter-data-redis-lettuce Spring Data ve Redis için Azure Önbellek’i Lettuce ile kullanmak için başlangıç paketi.

Aşağıdaki tablo, Spring Integration desteği için başlatıcıları listeler:

Ad Açıklama
spring-cloud-azure-starter-integration-eventhubs Azure Event Hubs ve Spring Integration'ı kullanmaya yönelik başlangıç.
spring-cloud-azure-starter-integration-servicebus Azure Service Bus ve Spring Integration'ı kullanmaya yönelik başlangıç.
spring-cloud-azure-starter-integration-storage-queue Azure Depolama Queue ve Spring Integration kullanmak için başlatıcı.

Aşağıdaki tabloda Spring Cloud Stream desteği için yeni başlayanlar listelemektedir:

Ad Açıklama
spring-cloud-azure-starter-stream-eventhubs Azure Event Hubs ve Spring Cloud Stream Binder'ı kullanmaya yönelik başlangıç.
spring-cloud-azure-starter-stream-servicebus Azure Service Bus ve Spring Cloud Stream Binder'ı kullanmaya yönelik başlangıç.

Aşağıdaki tabloda MySQL desteği için başlatıcılar listelemektedir:

Ad Açıklama
spring-cloud-azure-starter-jdbc-mysql Microsoft Entra kimlik doğrulaması aracılığıyla Azure MySQL'leri ve JDBC'yi kullanmaya yönelik başlangıç.

Aşağıdaki tabloda PostgreSQL desteği için yeni başlayanlar listelemektedir:

Ad Açıklama
spring-cloud-azure-starter-jdbc-postgresql Microsoft Entra kimlik doğrulaması aracılığıyla Azure PostgreSQL ve JDBC'yi kullanmaya yönelik başlangıç.

Spring Cloud Azure öğrenme

Kullanımı gösteren örneklerin tam listesi için bkz. Spring Cloud Azure Samples.

3.10.x sürümünden bu yana 4.0 sürümündeki yenilikler

Bu belge, 3.10'dan bu yana 4.0'da yapılan değişiklikleri kapsar. Bu önemli sürüm daha iyi güvenlik, daha yalın bağımlılıklar, üretime hazır olma desteği ve daha fazlasını sunar.

İpucu

4.0'a geçiş hakkında daha fazla bilgi için bkz. 4.0için Geçiş kılavuzu.

Aşağıdaki listede Spring Cloud Azure 4.0'ın sağladığı bazı değişiklikler özetlemektedir:

  • Birleştirilmiş proje adı, yapıt kimliği ve özellikleri olan birleşik bir geliştirme deneyimi.
  • Tek bir spring-cloud-azure-dependencies BOM ile basitleştirilmiş bağımlılık yönetimi.
  • Spring Initializr üzerinde Kafka, Event Hubs, Redis için Azure Önbellek ve Azure Uygulama Yapılandırması’ı kapsayacak şekilde Azure desteği genişletildi.
  • Fazla katmanları ve dolanıklığı ortadan kaldırmak için spring modülü bağımlılıklarını yeniden oluşturun.
  • Azure Uygulama Yapılandırması, Event Hubs, Service Bus, Azure Cosmos DB, Key Vault, Depolama Blobu ve Depolama Kuyruğu için Yönetilen Kimlik desteği.
  • Service Bus ve Event Hubs ile SAS belirteci ve belirteç kimlik bilgileriyle kimlik doğrulama gibi, altta yatan Azure SDK’sındaki kimlik doğrulama yöntemleri için Spring kitaplıklarımızda desteğin sürdürülmesi.
  • Kimlik bilgisi zinciri artık varsayılan olarak etkinleştirilerek uygulamaların uygulama özelliklerinden, ortam değişkenlerinden, yönetilen kimlikten, IDE'lerden vb. kimlik bilgilerini almasını sağlar. Daha fazla bilgi için Java için Azure Identity istemci kitaplığı içindeki DefaultAzureCredential bölümüne bakın.
  • Daha iyi güvenlik yönetişimi ve BT ilkelerine uyumu sağlamak için kaynak düzeyinde (Service Bus kuyruğu gibi) ayrıntılı erişim kontrolü.
  • Hem senkron hem de asenkron senaryolar için Azure SDK istemcilerine yönelik geliştirilmiş otomatik yapılandırma kapsamı sayesinde, Spring yaklaşımına uygun şekilde daha fazla seçenek sunuluyor.
  • Azure Uygulama Yapılandırması, Event Hubs, Azure Cosmos DB, Key Vault, Depolama Blobu, Depolama Kuyruğu ve Depolama Dosyası için sistem durumu göstergeleri eklendi.
  • Tüm HTTP tabanlı Azure SDK’ları için Spring Cloud Sleuth desteği.