Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Пакет SDK Azure с открытым кодом для Java упрощает подготовку, управление и использование ресурсов Azure из кода приложения Java.
Важные сведения
- Используйте библиотеки Azure для взаимодействия со службами Azure из кода Java, который выполняется локально или в облаке.
- Библиотеки поддерживают Java 8 и более поздние версии, и их тестируют как с базовой версией Java 8, так и с последним выпуском Java с долгосрочной поддержкой.
- Библиотеки включают полную поддержку модуля Java, что означает, что они полностью соответствуют требованиям модуля Java и экспортируют все соответствующие пакеты для использования.
- Пакет SDK Azure для Java состоит исключительно из многих отдельных библиотек Java, относящихся к определенным службам Azure. Пакет SDK не включает другие средства.
- В SDK есть отдельные библиотеки управления и клиентские библиотеки (иногда их называют библиотеками «плоскости управления» и «плоскости данных»). Каждый набор служит различным целям и используется различными видами кода. Дополнительные сведения см. в следующих разделах ниже в этой статье:
- Документацию по библиотекам можно найти в справочнике Azure for Java Reference, сгруппированном по службам Azure, либо в обозревателе Java API, организованном по именам пакетов.
Другие сведения
- Azure SDK библиотеки Java основаны на базовой Azure REST API, поэтому эти API можно использовать с помощью знакомых Java парадигм. Однако при желании вы всегда можете использовать REST API непосредственно из кода Java.
- Исходный код библиотек Azure можно найти в репозитории GitHub . Как проект с открытым исходным кодом, вклады приветствуются!
- Azure SDK для Java обновляется для совместного использования общих облачных шаблонов, таких как протоколы проверки подлинности, ведение журнала, трассировка, транспортные протоколы, буферные ответы и повторные попытки.
- Эта общая функция содержится в библиотеке azure-core.
- Дополнительные сведения о рекомендациях, применяемых к библиотекам, см. в руководстве по проектированию Java Azure SDK.
Поддерживаемые платформы для пакета SDK Azure для Java
Azure SDK для Java поставляется с поддержкой Java 8 и более поздних версий, но всегда используйте последний выпуск Java долгосрочной поддержки (LTS) в разработке и при выпуске в рабочую среду. Использование последнего выпуска LTS обеспечивает доступность последних улучшений в Java, включая исправления ошибок, улучшения производительности и исправления безопасности. Кроме того, пакет SDK Azure для Java включает дополнительную поддержку для последующих выпусков Java. Эта дополнительная поддержка повышает производительность и включает улучшения JDK за пределами поддерживаемых базовых показателей Java 8.
Пакет SDK Azure для Java тестируется и поддерживается в Windows, Linux и macOS. Он не тестируется на других платформах, поддерживаемых JDK, и не поддерживает развертывания Android. Для разработчиков, желающих разрабатывать программное обеспечение для развертывания на устройствах Android и которые используют службы Azure, в проекте пакета SDK Azure для Android доступны библиотеки, относящиеся к Android.
Подключение и использование ресурсов Azure с клиентскими библиотеками
Библиотеки клиента (или плоскости данных) помогают создавать код приложения Java для взаимодействия с уже подготовленными службами. Клиентские библиотеки существуют только для тех служб, которые поддерживают клиентский API. Их можно определить, потому что их идентификатор группы Maven — com.azure.
Все клиентские библиотеки Java Azure соответствуют одному и тому же шаблону проектирования API, предлагая класс построителя Java, который отвечает за создание экземпляра клиента. Этот шаблон отделяет определение и создание клиента от его использования, благодаря чему клиент становится неизменяемым и им проще пользоваться. Кроме того, все клиентские библиотеки соответствуют нескольким важным шаблонам:
Клиентские библиотеки, поддерживающие синхронные и асинхронные API, должны предлагать эти API в отдельных классах. Это требование означает, что в таких случаях, например, есть
KeyVaultClientдля синхронных API иKeyVaultAsyncClientдля асинхронных API.Существует один класс построителя, который несет ответственность за создание как синхронных, так и асинхронных API. Билдер назван аналогично классу клиента синхронизации с включением
Builder. Например,KeyVaultClientBuilder. Этот построитель имеет методыbuildClient()иbuildAsyncClient()для создания экземпляров клиента в соответствии с соответствующими параметрами.
Из-за этих соглашений все классы, заканчивающиеся Client, являются неизменяемыми и предоставляют операции для взаимодействия со службой Azure. Все классы, которые заканчиваются ClientBuilder предоставляют операции для настройки и создания экземпляра определенного типа клиента.
Пример клиентских библиотек
В следующем примере кода показано, как создать синхронное хранилище ключей KeyClient:
KeyClient client = new KeyClientBuilder()
.endpoint(<your Key Vault URL>)
.credential(new DefaultAzureCredentialBuilder().build())
.buildClient();
В следующем примере кода показано, как создать асинхронное хранилище ключей KeyAsyncClient:
KeyAsyncClient client = new KeyClientBuilder()
.endpoint(<your Key Vault URL>)
.credential(new DefaultAzureCredentialBuilder().build())
.buildAsyncClient();
Дополнительные сведения о работе с каждой клиентской библиотекой см. в файле README.md, расположенном в каталоге проекта библиотеки в репозитории sdk GitHub. Дополнительные фрагменты кода также можно найти в справочной документации и примерах Azure.
Подготовка ресурсов Azure и управление ими с помощью библиотек управления
Библиотеки управления (или "management plane") помогают создавать, подготавливать и иным образом управлять ресурсами Azure из кода Java-приложения. Эти библиотеки можно найти в идентификаторе группы Maven com.azure.resourcemanager. Все службы Azure имеют соответствующие библиотеки управления.
С помощью библиотек управления можно создавать сценарии конфигурации и развертывания, чтобы выполнять те же задачи, которые можно выполнять с помощью портала Azure или Azure CLI.
Все библиотеки управления Java Azure предоставляют класс *Manager как API службы, например ComputeManager для вычислительной службы Azure или AzureResourceManager для агрегирования популярных служб.
Пример библиотек управления
В следующем примере кода показано, как создать ComputeManager:
ComputeManager computeManager = ComputeManager
.authenticate(
new DefaultAzureCredentialBuilder().build(),
new AzureProfile(AzureEnvironment.AZURE));
В следующем примере кода показано, как подготовить новую виртуальную машину:
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();
В следующем примере кода показано, как получить существующую виртуальную машину:
VirtualMachine virtualMachine = computeManager.virtualMachines()
.getByResourceGroup(<your resource group>, <your virtual machine>);
В следующем примере кода показано, как обновить виртуальную машину и добавить новый диск данных:
virtualMachine.update()
.withNewDataDisk(10)
.apply();
Дополнительные сведения о работе с каждой библиотекой управления см. в файле README.md, расположенном в каталоге проекта библиотеки в репозитории GitHub SDK. Дополнительные фрагменты кода также можно найти в справочной документации и примерах Azure.
Получите помощь и свяжитесь с командой SDK
- Ознакомьтесь с документацией по Azure SDK для Java.
- Задавайте вопросы сообществу в Stack Overflow.
- Откройте проблемы с пакетом SDK в репозитории GitHub.
- Упоминать @AzureSDK в Twitter.
Дальнейшие действия
Теперь, когда вы понимаете, что такое Azure SDK для Java, ознакомьтесь со многими общими концепциями, которые помогут вам эффективно использовать библиотеки. В следующих статьях приведены хорошие отправные точки: