Azure Tables Java 开发技能
帮助 Java 开发者构建 Azure 表存储与 Cosmos DB 表 API 应用。
提供连接字符串、共享密钥、SAS 和 DefaultAzureCredential 等认证路径,并使用占位符,数据流基本透明;但未说明最小权限、用户确认、密钥管理、敏感数据日志风险或删除操作的回滚,因此扣分。
主路径覆盖客户端创建、CRUD、查询、批处理、异步和错误处理,且有参考示例;但静态材料没有针对该技能的提交测试或可复现构建证据,依赖使用 beta 版本,异常输入和版本兼容性说明有限,因此受限于静态上限并扣分。
目标受众、Azure Tables/Cosmos DB Table API 场景、Java 语言和触发短语较清晰;但未明确不适用场景、输入输出边界、服务前置条件或中文支持,且未提供中国大陆网络可达性说明,因此扣分。
文档结构清楚,包含安装、概念、核心模式、错误处理、环境变量、最佳实践和独立示例;许可证、作者和版本元数据明确,但没有变更日志、维护责任与更新路径、FAQ、限制清单,且使用 beta 依赖,因此扣分。
可直接为常见表服务客户端、实体 CRUD、查询和事务代码提供模板,核心任务价值明确;但没有该技能的代表性输出验证、完整项目配置、测试或替代方案比较,代码仍需人工核对版本和上下文,因此扣分。
存在带修订版本的源文件、仓库级 CI 和测试工具材料,但未见该技能专属测试套件、验收标准或第三方执行结果;本次也未执行代码,因此只能给有限静态证据分。
- 示例包含连接字符串、账户密钥和 SAS 的认证方式;实际使用时应避免硬编码或打印凭据,并优先采用适当范围的托管身份和 RBAC。
- 技能包含 deleteTable、deleteEntity、upsert 和 replace 示例,但没有确认、备份或恢复指导;执行前应人工确认目标和数据影响。
- 依赖版本为 12.6.0-beta.1,使用前应核对项目的稳定版本、API 兼容性和传递依赖安全性。
- 文档未说明 Azure 服务区域、网络访问限制或中国大陆可达性。
它能做什么 & 适用场景
该技能面向使用 Azure Tables SDK for Java 的开发任务,覆盖 Azure Table Storage 和 Cosmos DB Table API。它提供 Maven 依赖、客户端认证、表与实体管理、查询、批量事务和错误处理模式。技能还说明分区键、行键、实体属性限制及实体大小限制。适合需要在 Java 应用中实现无模式键值存储或结构化表数据访问的开发者。
生成和指导 Java 代码,用于添加 Maven 依赖、创建 TableServiceClient 或 TableClient、创建和删除表、创建读取更新插入或删除实体、列出和筛选实体、使用 OData 条件查询、执行同一分区键下的批量事务、定义类型化实体,并处理 TableServiceException。它还展示连接字符串、共享密钥、SAS 令牌和 DefaultAzureCredential 等认证方式,以及相关环境变量。
- Java 开发者需要为 Azure Table Storage 创建实体 CRUD 服务时,使用客户端创建表、写入实体并查询数据。
- 使用 Cosmos DB Table API 保存无模式键值数据的团队,需要参考端点配置、实体操作和查询示例时。
- 需要按分区键组织数据并优化查询的开发者,可使用分区键筛选、属性投影和实体大小限制指导。
- 需要对同一分区中的多个实体执行原子操作的开发者,可参考批量事务模式。
- 需要在本地开发与生产环境之间切换认证方式的 Java 团队,可参考连接字符串、共享密钥、SAS 和托管身份示例。
优缺点一览
- 覆盖 Azure Table Storage 与 Cosmos DB Table API。
- 包含连接字符串、共享密钥、SAS 和 DefaultAzureCredential 认证示例。
- 覆盖表管理、实体 CRUD、OData 筛选、属性投影、类型化实体和批量事务。
- README 显示该技能有 11 个测试场景。
- 仓库采用 MIT 许可证并处于持续维护状态。
- 示例使用 12.6.0-beta.1 版本,属于 beta 版本。
- DefaultAzureCredential 示例明确标注为仅适用于 Storage。
- 技能提供代码模式和指导,但来源未说明完整部署流程、性能基准或所有 SDK API 的覆盖范围。
- 批量事务要求所有实体使用同一分区键。
如何安装
在 Agent Skills 兼容客户端中安装仓库集合:npx skills add microsoft/skills。根据安装向导选择技能;技能文件位于 .github/plugins/azure-sdk-java/skills/azure-data-tables-java/SKILL.md。Java 项目还需在 pom.xml 中加入 com.azure:azure-data-tables:12.6.0-beta.1。
如何使用
在编码任务中明确提出触发意图,例如:“使用 Azure Tables Java SDK 创建表实体 CRUD 和按 PartitionKey 查询的服务”或“为 Cosmos DB Table API 编写 Java 批量事务示例”。技能会提供客户端创建、认证、实体操作、查询、事务和异常处理代码模式。
对比同类
该技能同时覆盖 Azure Table Storage 和 Cosmos DB Table API,但没有提供两者之间的功能、成本或性能对比;选型仍需根据目标服务和项目约束决定。