Java için Azure SDK 'sını kullanma
Java için açık kaynaklı Azure SDK 'Sı, Java uygulama kodundan Azure kaynaklarını sağlamayı, yönetmeyi ve kullanmayı kolaylaştırır.
Önemli ayrıntılar
- Azure kitaplıkları, yerel olarak veya bulutta çalıştırdığınız Java kodundan Azure hizmetleriyle iletişim kurma yöntemlerdir.
- Kitaplıklar Java 8 ve üstünü destekler ve hem Java 8 temeline hem de en son Java ' uzun süreli destek ' sürümüne göre test edilir.
- Kitaplıklar tam Java modülü desteği içerir. Bu, bir Java modülünün gereksinimleriyle tamamen uyumlu oldukları ve tüm ilgili paketlerin kullanım için dışarı aktarılacağı anlamına gelir.
- Java için Azure SDK, yalnızca belirli Azure hizmetleriyle ilgili birçok ayrı Java kitaplığı oluşur. "SDK" içinde başka hiçbir araç yok.
- Farklı "Yönetim" ve "istemci" kitaplıkları vardır (bazen "Yönetim düzlemi" ve "veri düzlemi" kitaplıkları olarak adlandırılır). Her küme farklı amaçlara hizmet eder ve farklı kod türleri tarafından kullanılır. Daha fazla bilgi için bu makalenin ilerleyen kısımlarında yer alarak aşağıdaki bölümlere bakın:
- Azure hizmeti tarafından düzenlenen Java başvurusu Için Azure 'da kitaplıkların belgelerini veya paket adına göre DÜZENLENMIŞ Java API tarayıcısını bulabilirsiniz.
Diğer ayrıntılar
- Java kitaplıkları için Azure SDK, temel alınan Azure REST API en üstünde derleyin ve bu API 'Leri tanıdık Java paradigmalarına aracılığıyla kullanmanıza olanak tanır. Ancak, tercih ediyorsanız REST API her zaman doğrudan Java kodundan kullanabilirsiniz.
- Azure kitaplıklarının kaynak kodunu GitHub deposundabulabilirsiniz. Açık kaynaklı bir proje olarak, katılımlar hoş geldiniz!
- Şu anda Java kitaplıkları için Azure SDK 'sını, kimlik doğrulama protokolleri, günlüğe kaydetme, izleme, taşıma protokolleri, arabelleğe alınmış yanıtlar ve yeniden denemeler gibi ortak bulut düzenlerini paylaşacak şekilde güncelleştiriyoruz.
- Bu paylaşılan işlev Azure çekirdek kitaplığı 'nda bulunur.
- Kitaplıklara uygulanan yönergeler hakkında daha fazla bilgi için bkz. Java Azure SDK tasarım yönergeleri.
Java için Azure SDK için desteklenen platformlar
Java için Azure SDK, Java 8 ve üzeri desteğiyle birlikte gelir, ancak geliştiricilerin geliştirme ve üretime serbest bırakma sırasında her zaman en son Java uzun süreli destek (LTS) sürümünü kullanmasını öneririz. En son LTS sürümünün kullanılması, hata düzeltmeleri, performans iyileştirmeleri ve güvenlik düzeltmeleri dahil olmak üzere Java 'daki en son geliştirmelerin kullanılabilirliğini sağlar. Ayrıca, Java için Azure SDK, daha sonraki Java sürümleri için ek destek içerir. Bu ek destek, performansı artırır ve desteklenen Java 8 temelinin ötesinde JDK 'e özgü geliştirmeleri içerir.
Java için Azure SDK Windows, Linux ve macos 'ta test edilir ve desteklenir. JDK 'nin desteklediği diğer platformlarda sınanmamıştır ve Android dağıtımlarını desteklemez. Android cihazlarda dağıtım için yazılım geliştirmek isteyen ve Azure hizmetlerini kullanan geliştiriciler için, Android Için Azure SDK projesinde Android 'e özgü kitaplıklar mevcuttur.
istemci kitaplıklarıyla Azure kaynaklarını Bağlan ve kullanma
İstemci (veya "veri düzlemi") kitaplıkları, zaten sağlanmış hizmetlerle etkileşim kurmak için Java uygulama kodu yazmanıza yardımcı olur. İstemci kitaplıkları yalnızca bir istemci API 'sini destekleyen hizmetler için vardır. Bunları, Maven Grup KIMLIĞI olduğundan belirleyebilirsiniz com.azure .
Tüm Azure Java istemci kitaplıkları, bir istemcinin örneğini oluşturmaktan sorumlu bir Java Builder sınıfı sunan aynı API tasarım modelini izler. Bu model, istemcinin tanımını ve örneklemesini kendi işleminden ayırır, bu da istemcinin sabit ve daha kolay kullanılmasını sağlar. Ayrıca, tüm istemci kitaplıkları bazı önemli desenleri izler:
Hem zaman uyumlu hem de zaman uyumsuz API 'Leri destekleyen istemci kitaplıkları, bu API 'Leri ayrı sınıflarda sunmalıdır. Bu, örneğin,
KeyVaultClienteşitleme API 'leri için veKeyVaultAsyncClientzaman uyumsuz API 'ler için olmak üzere bu durumlarda olduğu anlamına gelir.Hem Sync hem de Async API 'Leri oluşturma sorumluluğunu alan tek bir Oluşturucu sınıfı vardır. Oluşturucu, dahil edilen Sync Client sınıfına benzer şekilde adlandırılır
Builder. Örneğin,KeyVaultClientBuilder. Bu OluşturucubuildClient()buildAsyncClient(), uygun şekilde istemci örnekleri oluşturmak için ve yöntemlerine sahiptir.
Bu kurallar nedeniyle, içinde biten tüm sınıflar Client sabittir ve bir Azure hizmetiyle etkileşim kurmaya yönelik işlemler sağlar. İle biten tüm sınıflar ClientBuilder , belirli bir istemci türünün bir örneğini yapılandırmak ve oluşturmak için işlem sağlar.
İstemci kitaplıkları örneği
Aşağıdaki kod örneği, zaman uyumlu Key Vault nasıl oluşturulacağını gösterir KeyClient :
KeyClient client = new KeyClientBuilder()
.endpoint(<your Key Vault URL>)
.credential(new DefaultAzureCredentialBuilder().build())
.buildClient();
Aşağıdaki kod örneği, zaman uyumsuz Key Vault nasıl oluşturulacağını gösterir KeyAsyncClient :
KeyAsyncClient client = new KeyClientBuilder()
.endpoint(<your Key Vault URL>)
.credential(new DefaultAzureCredentialBuilder().build())
.buildAsyncClient();
her istemci kitaplığıyla çalışma hakkında daha fazla bilgi için, SDK GitHub deposundakikitaplığın proje dizininde bulunan README.md dosyasına bakın. Ayrıca, başvuru belgelerinde ve Azure örneklerindedaha fazla kod parçacığı bulabilirsiniz.
Yönetim kitaplıklarıyla Azure kaynaklarını sağlama ve yönetme
Yönetim (veya "Yönetim düzlemi") kitaplıkları, Java uygulama kodundan Azure kaynaklarını oluşturmanıza, sağlamanıza ve yönetmenize yardımcı olur. Bu kitaplıkları com.azure.resourcemanager Maven grup kimliğinde bulabilirsiniz. Tüm Azure hizmetlerinde karşılık gelen yönetim kitaplıkları vardır.
Yönetim kitaplıklarıyla, Azure Portal veya Azure CLIaracılığıyla kullanabileceğiniz aynı görevleri gerçekleştirmek için yapılandırma ve dağıtım betikleri yazabilirsiniz.
Tüm Azure Java yönetim kitaplıkları, *Manager hizmet API 'si olarak bir sınıf (örneğin, ComputeManager Azure işlem hizmeti veya AzureResourceManager popüler hizmetlerin toplamı) sağlar.
Yönetim kitaplıkları örneği
Aşağıdaki kod örneği nasıl oluşturulacağını gösterir ComputeManager :
ComputeManager computeManager = ComputeManager
.authenticate(
new DefaultAzureCredentialBuilder().build(),
new AzureProfile(AzureEnvironment.AZURE));
Aşağıdaki kod örneği, yeni bir sanal makinenin nasıl sağlanacağını göstermektedir:
VirtualMachine virtualMachine = computeManager.virtualMachines()
.define(<your virtual machine>)
.withRegion(Region.US_WEST)
.withExistingResourceGroup(<your resource group>)
.withNewPrimaryNetwork("10.0.0.0/28")
.withPrimaryPrivateIPAddressDynamic()
.withoutPrimaryPublicIPAddress()
.withPopularLinuxImage(KnownLinuxVirtualMachineImage.UBUNTU_SERVER_18_04_LTS)
.withRootUsername(<virtual-machine username>)
.withSsh(<virtual-machine SSH key>)
.create();
Aşağıdaki kod örneği, var olan bir sanal makinenin nasıl alınacağını göstermektedir:
VirtualMachine virtualMachine = computeManager.virtualMachines()
.getByResourceGroup(<your resource group>, <your virtual machine>);
Aşağıdaki kod örneği, sanal makinenin nasıl güncelleştirilmesini ve yeni bir veri diski nasıl ekleneceğini gösterir:
virtualMachine.update()
.withNewDataDisk(10)
.apply();
her bir yönetim kitaplığıyla çalışma hakkında daha fazla bilgi için, SDK GitHub deposundakikitaplığın proje dizininde bulunan README.md dosyasına bakın. Ayrıca, başvuru belgelerinde ve Azure örneklerindedaha fazla kod parçacığı bulabilirsiniz.
Yardım alın ve SDK ekibine bağlanın
- Java Için Azure SDK belgeleriniziyaret edin.
- Stack Overflow ile topluluğa soru sorabilirsiniz.
- GitHub deposundakiSDK 'ya karşı sorunları açın.
- Twitter 'da @AzureSDK bahsetme.
Sonraki adımlar
Java için Azure SDK 'sının ne olduğunu anladığınıza göre, kitaplıkları kullanırken üretken olmanızı sağlamak için var olan çapraz kesme kavramlarının çoğunu ayrıntılı bir şekilde bulabilirsiniz. Aşağıdaki makaleler iyi başlangıç noktaları sağlar: