Agent skill
java-dev
Java 开发规范,包含命名约定、异常处理、Spring Boot 最佳实践等。当操作 .java, pom.xml, build.gradle 文件时自动激活。
Install this agent skill to your Project
npx add-skill https://github.com/doccker/cc-use-exp/tree/main/.gemini/skills/java-dev
SKILL.md
Java 开发规范
参考来源: Google Java Style Guide、阿里巴巴 Java 开发手册
🏗️ 核心约束 (Spring Boot)
- 构造函数注入:优先使用
@RequiredArgsConstructor(Lombok) 配合private final字段。 - DTO/VO 规范:一律使用 Lombok
@Data/@Value/@Builder,严禁手写 getter/setter。 - 入参校验:所有
@RequestBody必须加@Valid。分页size必须加@Max(100)约束。
🚫 严格禁止 (数据库与并发)
| 陷阱 | 解决方案 |
|---|---|
| 循环内调用 Repository (N+1) | 循环外批量查询 + 内存匹配 |
| IN 子句参数 > 500 | 分批查询(每批 500) |
| 先读再写 (Read-Modify-Write) | UPDATE SET balance = balance + :amount |
| 重复插入 check-then-act | 唯一索引兜底 + 异常捕获 |
异常处理核心准则
- 捕获具体异常,禁止裸捕获
Exception。 - 必须使用资源自动关闭(
try-with-resources)。 - 捕获后应向上抛出业务异常并携带上下文,或正确记录日志(包含堆栈)。
并发安全规范
- 针对共享变量的操作,必须保证原子性。
- 优先使用乐观锁(
@Version字段 + 重试机制)。 - 绝不应为了解决并发问题而引入全局大锁,除非业务场景极其特殊。
第三方 API HTTP 客户端选型
| 规则 | 说明 |
|---|---|
❌ 避免 RestTemplate 默认客户端调用国内平台 API |
默认 HttpURLConnection 的 POST 请求与微信/支付宝等 CDN 存在兼容性问题(已知触发 412/403) |
✅ 优先用 java.net.http.HttpClient(JDK 11+) |
现代 HTTP 客户端,无 CDN 兼容性问题 |
✅ 或配置 HttpComponentsClientHttpRequestFactory |
让 RestTemplate 底层走 Apache HttpClient |
诊断特征:HTTP 错误 + body 为空 + response headers 极简(只有 Connection/Content-Length)= CDN 层拦截,不是 API 本身的响应。同一 API 的 GET 正常但 POST 异常时,优先怀疑 HTTP 客户端兼容性。
📋 本回复遵循:
java-dev- [章节]
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
ops-safety
运维安全规范。当用户执行系统级命令(sysctl、iptables、systemctl、Docker 配置、数据库 DDL) 或进行服务器运维操作时触发。 包含命令风险说明模板、回滚方案要求、问题排查原则、Docker/Cloudflare/数据库场景规则等。
ruanzhu
当用户执行 /ruanzhu 命令或请求生成软著源代码文档时触发。提供软著源代码 DOCX 生成规范。 覆盖项目信息检测、语言扫描规则、页数控制、DOCX 格式规范等。
ui-ux-pro-max
专业级 UI/UX 设计规范,需要高质量界面设计时手动触发或描述"设计感/专业UI"时自动触发。 覆盖视觉层次、配色体系、排版节奏、交互微动效、响应式适配等。 日常前端开发由 frontend-dev skill 覆盖。
bash-style
Bash 编写规范。当用户操作 .sh、Dockerfile、Makefile、.yml、.yaml 文件, 或在 Markdown 中编写 bash/shell 代码块时触发。 包含注释规范、文件写入方式、Heredoc 引号规则、权限路径、脚本规范等。
redis-safety
Redis 安全与性能规范。当用户操作 Redis 相关代码(go-redis、Jedis、redis-py、ioredis)时触发。 包含禁止 KEYS 命令、SCAN 替代、大 key 控制、Pipeline 批量、TTL 规范等。
python-dev
Python 开发规范。当用户操作 .py、pyproject.toml、requirements.txt、setup.py 文件, 或涉及 FastAPI、Django、Flask、pytest、asyncio 开发时触发。 包含 PEP 8 风格、类型注解、异常处理、测试规范、异步编程、性能优化等。
Didn't find tool you were looking for?