【研发类-框架和库Skills】azure-appconfiguration-java 技能

发布时间:2026/6/20 16:07:33

【研发类-框架和库Skills】azure-appconfiguration-java 技能 Azure App Configuration SDK for Java。集中式应用程序配置管理包括键值设置、功能标志和快照。技能概述azure-appconfiguration-java 技能提供了Azure App Configuration SDK for Java的完整使用指南。Azure App Configuration是一项托管服务用于集中管理应用程序配置。该技能帮助开发者使用Java SDK进行配置管理、功能标志管理、快照操作等。下载地址antigravity-awesome-skills/skills/azure-appconfiguration-java at main · sickn33/antigravity-awesome-skills · GitHub主要功能配置设置管理: 创建、读取、更新和删除配置设置功能标志管理: 创建和管理功能标志支持条件过滤密钥引用: 创建指向Key Vault密钥的引用快照操作: 创建和管理配置快照支持时间点视图标签管理: 使用标签分离不同环境的配置只读保护: 锁定关键配置防止意外修改异步客户端: 支持异步操作提高吞吐量触发条件在以下情况下应该调用此技能:需要在Java应用中使用Azure App Configuration实现集中式配置管理管理功能标志和动态配置创建配置快照进行版本控制集成Azure Key Vault进行密钥管理核心概念概念描述Configuration Setting带有可选标签的键值对Label用于分离设置的维度如环境Feature Flag用于功能管理的特殊设置Secret Reference指向Key Vault密钥的设置Snapshot设置的时间点不可变视图安装方法Maven依赖dependencygroupIdcom.azure/groupIdartifactIdazure-data-appconfiguration/artifactIdversion1.8.0/version/dependency使用示例示例1: 创建客户端import com.azure.data.appconfiguration.ConfigurationClient;import com.azure.data.appconfiguration.ConfigurationClientBuilder;// 使用连接字符串ConfigurationClient configClient new ConfigurationClientBuilder().connectionString(System.getenv(AZURE_APPCONFIG_CONNECTION_STRING)).buildClient();// 使用Entra ID推荐import com.azure.identity.DefaultAzureCredentialBuilder;ConfigurationClient configClient new ConfigurationClientBuilder().credential(new DefaultAzureCredentialBuilder().build()).endpoint(System.getenv(AZURE_APPCONFIG_ENDPOINT)).buildClient();示例2: 配置设置操作// 创建或更新设置ConfigurationSetting setting configClient.setConfigurationSetting(app/cache/enabled,Production,true);// 获取设置ConfigurationSetting setting configClient.getConfigurationSetting(app/database/connection,Production);System.out.println(Value: setting.getValue());// 删除设置ConfigurationSetting deleted configClient.deleteConfigurationSetting(app/cache/enabled,Production);示例3: 功能标志管理import com.azure.data.appconfiguration.models.FeatureFlagConfigurationSetting;import com.azure.data.appconfiguration.models.FeatureFlagFilter;import java.util.Arrays;FeatureFlagFilter percentageFilter new FeatureFlagFilter(Microsoft.Percentage).addParameter(Value, 50);FeatureFlagConfigurationSetting featureFlag new FeatureFlagConfigurationSetting(beta-feature, true).setDescription(Beta feature rollout).setClientFilters(Arrays.asList(percentageFilter));FeatureFlagConfigurationSetting created (FeatureFlagConfigurationSetting) configClient.addConfigurationSetting(featureFlag);示例4: 快照操作import com.azure.data.appconfiguration.models.ConfigurationSnapshot;import com.azure.data.appconfiguration.models.ConfigurationSettingsFilter;import com.azure.core.util.polling.SyncPoller;import java.util.ArrayList;import java.util.List;ListConfigurationSettingsFilter filters new ArrayList();filters.add(new ConfigurationSettingsFilter(app/*));SyncPollerPollOperationDetails, ConfigurationSnapshot poller configClient.beginCreateSnapshot(release-v1.0,new ConfigurationSnapshot(filters),Context.NONE);poller.waitForCompletion();ConfigurationSnapshot snapshot poller.getFinalResult();最佳实践使用标签: 按环境分离配置Dev、Staging、Production使用快照: 为发布创建不可变快照功能标志: 用于渐进式发布和A/B测试密钥引用: 将敏感值存储在Key Vault中条件请求: 使用ETags进行乐观并发控制只读保护: 锁定关键生产设置使用Entra ID: 优先于连接字符串异步客户端: 用于高吞吐量场景环境变量AZURE_APPCONFIG_CONNECTION_STRINGEndpointhttps://store.azconfig.io;Idid;Secretsecret AZURE_APPCONFIG_ENDPOINThttps://store.azconfig.io相关资源Maven包: Maven Central: com.azure:azure-data-appconfigurationGitHub: azure-sdk-for-java/sdk/appconfiguration/azure-data-appconfiguration at main · Azure/azure-sdk-for-java · GitHubAPI文档: Azure SDK for Java | Azure SDK for Java产品文档: Azure App Configuration documentation | Microsoft Learn示例: azure-sdk-for-java/sdk/appconfiguration/azure-data-appconfiguration/src/samples at main · Azure/azure-sdk-for-java · GitHub限制说明仅当任务明确符合上述范围时使用此技能不要将输出视为环境特定验证、测试或专家审查的替代品如果缺少所需的输入、权限、安全边界或成功标准请停止并寻求澄清

相关新闻