用途:在 Spring Boot 应用中落实 REST API 设计原则,用于设计、评审或改进 REST 接口,包括控制器与 DTO 设计、错误响应、分页校验、幂等性等场景。
主要能力:覆盖 HTTP 方法语义一致性(GET、POST、PUT、PATCH、DELETE)、资源 URI 设计、HTTP 状态码、精简契约的请求/响应 DTO、API 版本化(URI、请求头或媒体类型并保持一致)、边界 Bean Validation(控制器输入使用 @Valid/@Validated,失败返回 400)、分页排序过滤(Page/Pageable 并设上限)、JSON 契约中使用带偏移的 ISO-8601 时间(OffsetDateTime、Instant)、内容协商(默认 JSON,必要时用厂商媒体类型)、POST 创建的 Idempotency-Key 与冲突时 409、ETag 并发控制(If-Match/If-None-Match,412/304)、HTTP 缓存规范(Cache-Control、ETag、Last-Modified)、弃用与日落响应头(Deprecation、Sunset、Link rel="successor-version")、错误处理、API 安全(TLS、认证、授权、输入校验)、以 OpenAPI 文件作为 API 优先的事实来源(OpenAPI Generator)、Controller Advice 与 RFC 7807 Problem Details。
使用方式:参考 references/302-frameworks-spring-boot-rest.md 中的规则与好坏示例;先阅读参考并检查当前项目,再确定改进范围与最小安全改动,随后按参考模式实现或重构,最后执行构建与测试并汇报结果。
约束:应用任何 REST API 改动前,必须运行 ./mvnw compile 或 mvn compile;若编译失败立即停止。应用改进后运行 ./mvnw clean verify 或 mvn clean verify 做全量验证。若请求范围不明确,应停止并先提出澄清问题;若缺少必需输入、文件或工具,应报告缺失项并询问是否继续提供搭建指导。
适用场景:评审 Spring Boot REST API 的 Java 代码、应用最佳实践、设计控制器与 DTO、添加 Problem Details 错误响应、改进分页校验或幂等性。
限制:资料未提供价格、平台支持范围及具体版本要求。