Korzystanie z zestawu Azure SDK dla języka Java
Zestaw Sdk platformy Azure typu open source dla języka Java upraszcza aprowizowanie i zarządzanie zasobami platformy Azure z poziomu kodu aplikacji Java oraz zarządzanie nimi.
Ważne szczegóły
- Biblioteki platformy Azure to sposób komunikowania się z usługami platformy Azure z poziomu kodu Java uruchamianego lokalnie lub w chmurze.
- Biblioteki obsługują Java 8 lub nowsze i są testowane zarówno pod kątem wersji bazowej Java 8, jak i najnowszego wydania Java o długoterminowym wsparciu.
- Biblioteki obejmują pełną obsługę modułu Java, co oznacza, że są one w pełni zgodne z wymaganiami modułu Java i eksportują wszystkie odpowiednie pakiety do użycia.
- Zestaw Azure SDK dla języka Java składa się wyłącznie z wielu pojedynczych bibliotek Java, które odnoszą się do określonych usług platformy Azure. W zestawie SDK nie ma żadnych innych narzędzi.
- Istnieją odrębne biblioteki zarządzania oraz klienta (czasami nazywane "płaszczyzną zarządzania" i "płaszczyzną danych"). Każdy zestaw służy do różnych celów i jest używany przez różne rodzaje kodu. Aby uzyskać więcej informacji, zobacz następujące sekcje w dalszej części tego artykułu:
- Dokumentację bibliotek można znaleźć w Azure for Java Reference zorganizowanej według usługi Platformy Azure lub w przeglądarce interfejsu API języka Java zorganizowanej według nazwy pakietu.
Inne szczegóły
- Zestaw Azure SDK dla bibliotek Języka Java opiera się na podstawowym interfejsie API REST platformy Azure, co umożliwia korzystanie z tych interfejsów API za pomocą znanych paradygmatów języka Java. Jednak zawsze możesz użyć interfejsu API REST bezpośrednio z poziomu kodu Java, jeśli wolisz.
- Kod źródłowy bibliotek platformy Azure można znaleźć w repozytorium GitHub. W ramach projektu open source współtworzenie jest mile widziane!
- Obecnie aktualizujemy zestaw Azure SDK dla bibliotek Języka Java, aby współużytkować typowe wzorce chmury, takie jak protokoły uwierzytelniania, rejestrowanie, śledzenie, protokoły transportu, buforowane odpowiedzi i ponawianie prób.
- Ta udostępniona funkcja jest zawarta w bibliotece azure-core.
- Aby uzyskać więcej informacji na temat wytycznych, które stosujemy do bibliotek, zobacz Wytyczne dotyczące projektowania zestawu Java SDK platformy Azure.
Obsługiwane platformy dla zestawu Azure SDK dla języka Java
Zestaw Azure SDK dla języka Java jest dostarczany z obsługą języka Java 8 i nowszych, ale zalecamy, aby deweloperzy zawsze używali najnowszej wersji długoterminowej obsługi języka Java (LTS) podczas opracowywania i wydawania do środowiska produkcyjnego. Użycie najnowszej wersji LTS zapewnia dostępność najnowszych ulepszeń w języku Java, w tym poprawek błędów, ulepszeń wydajności i poprawek zabezpieczeń. Ponadto zestaw Azure SDK dla języka Java obejmuje dodatkową obsługę nowszych wersji języka Java. Ta dodatkowa obsługa zwiększa wydajność i obejmuje ulepszenia specyficzne dla zestawu JDK poza obsługiwanym punktem odniesienia języka Java 8.
Zestaw Azure SDK dla języka Java jest testowany i obsługiwany w systemach Windows, Linux i macOS. Nie jest testowany na innych platformach, które obsługuje zestaw JDK i nie obsługuje wdrożeń systemu Android. W przypadku deweloperów, którzy chcą opracowywać oprogramowanie do wdrażania na urządzeniach z systemem Android i które korzystają z usług platformy Azure, w projekcie android dostępne są biblioteki specyficzne dla systemu Android.
Nawiązywanie połączenia z zasobami platformy Azure i korzystanie z nich za pomocą bibliotek klienckich
Biblioteki klienta (lub "płaszczyzny danych") ułatwiają pisanie kodu aplikacji Java w celu interakcji z już aprowizowanymi usługami. Biblioteki klienckie istnieją tylko dla tych usług, które obsługują interfejs API klienta. Można je zidentyfikować, ponieważ ich identyfikator grupy Maven jest com.azure
.
Wszystkie biblioteki klienckie Języka Java platformy Azure są zgodne z tym samym wzorcem projektowania interfejsu API, który oferuje klasę konstruktora języka Java, która jest odpowiedzialna za tworzenie wystąpienia klienta. Ten wzorzec projektowy oddziela definicję i wystąpienie klienta od jego operacji, co pozwala na to, aby klient był niezmienny, a przez co łatwiejszy w użyciu. Ponadto wszystkie biblioteki klienckie są zgodne z kilkoma ważnymi wzorcami:
Biblioteki klienckie, które obsługują zarówno synchroniczne, jak i asynchroniczne interfejsy API, muszą oferować te interfejsy API w oddzielnych klasach. Oznacza to, że w takich przypadkach będą na przykład
KeyVaultClient
dla synchronizacyjnych interfejsów API iKeyVaultAsyncClient
dla asynchronicznych interfejsów API.Istnieje jedna klasa konstruktora, która ponosi odpowiedzialność za tworzenie zarówno synchronizacji, jak i asynchronicznych interfejsów API. Twórca ma nazwę podobną do klasy klienta synchronizacji, zawierającą
Builder
. Na przykładKeyVaultClientBuilder
. Ten konstruktor mabuildClient()
ibuildAsyncClient()
metody tworzenia wystąpień klienta zgodnie z potrzebami.
Ze względu na te konwencje wszystkie klasy kończące się na Client
są niezmienne i zapewniają operacje interakcji z usługą platformy Azure. Wszystkie klasy kończące się na ClientBuilder
zapewniają operacje konfigurowania i tworzenia wystąpienia określonego typu klienta.
Przykład bibliotek klienckich
W poniższym przykładzie kodu pokazano, jak utworzyć synchroniczną usługę Key Vault KeyClient
:
KeyClient client = new KeyClientBuilder()
.endpoint(<your Key Vault URL>)
.credential(new DefaultAzureCredentialBuilder().build())
.buildClient();
W poniższym przykładzie kodu pokazano, jak utworzyć asynchroniczną usługę Key Vault KeyAsyncClient
:
KeyAsyncClient client = new KeyClientBuilder()
.endpoint(<your Key Vault URL>)
.credential(new DefaultAzureCredentialBuilder().build())
.buildAsyncClient();
Aby uzyskać więcej informacji na temat pracy z każdą biblioteką klienta, zobacz plik README.md znajdujący się w katalogu projektu biblioteki w repozytorium zestawu SDK na GitHubie . Więcej fragmentów kodu można również znaleźć w dokumentacji referencyjnej oraz Przykłady platformy Azure.
Twórz i zarządzaj zasobami platformy Azure za pomocą bibliotek zarządzania
Biblioteki zarządzania (lub "płaszczyzny zarządzania") ułatwiają tworzenie, aprowizację i zarządzanie zasobami platformy Azure za pomocą kodu aplikacji Java. Te biblioteki można znaleźć pod identyfikatorem grupy com.azure.resourcemanager
Maven. Wszystkie usługi platformy Azure mają odpowiednie biblioteki zarządzania.
Za pomocą bibliotek zarządzania można pisać skrypty konfiguracji i wdrażania, aby wykonywać te same zadania, które można wykonać za pośrednictwem witryny Azure Portal lub interfejsu wiersza polecenia platformy Azure .
Wszystkie biblioteki zarządzania Java platformy Azure udostępniają klasę *Manager
jako interfejs API usługi, na przykład ComputeManager
dla usługi obliczeniowej platformy Azure lub AzureResourceManager
agregacji popularnych usług.
Przykład bibliotek zarządzania
W poniższym przykładzie kodu pokazano, jak utworzyć ComputeManager
:
ComputeManager computeManager = ComputeManager
.authenticate(
new DefaultAzureCredentialBuilder().build(),
new AzureProfile(AzureEnvironment.AZURE));
W poniższym przykładzie kodu pokazano, jak aprowizować nową maszynę wirtualną:
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();
W poniższym przykładzie kodu pokazano, jak uzyskać istniejącą maszynę wirtualną:
VirtualMachine virtualMachine = computeManager.virtualMachines()
.getByResourceGroup(<your resource group>, <your virtual machine>);
W poniższym przykładzie kodu pokazano, jak zaktualizować maszynę wirtualną i dodać nowy dysk danych:
virtualMachine.update()
.withNewDataDisk(10)
.apply();
Aby uzyskać więcej informacji na temat pracy z każdą biblioteką zarządzania, zobacz plik README.md znajdujący się w katalogu projektu każdej biblioteki w repozytorium GitHub zestawu SDK. Więcej fragmentów kodu można również znaleźć w dokumentacji referencyjnej oraz Przykłady platformy Azure.
Uzyskaj pomoc i skontaktuj się z zespołem SDK
- Odwiedź dokumentację Azure SDK dla języka Java.
- Opublikuj pytania do społeczności w witrynie Stack Overflow.
- Problemy otwarte dotyczące zestawu SDK w repozytorium GitHub .
- Wspomnij @AzureSDK na Twitterze.
Następne kroki
Teraz, gdy już wiesz, czym jest zestaw Azure SDK dla języka Java, możesz szczegółowo zapoznać się z wieloma istniejącymi pojęciami, które pozwalają wydajnie korzystać z bibliotek. Następujące artykuły zawierają dobre punkty wyjścia: