noshitjava-skill · git:20261006.e05201d · 2026-10-06 · sha256 34ea788d37c2c76f

noshitjava-skill git:20261006.e05201dA

Immutable. This exact content never changes and is served at /api/v1/blob/34ea788d37c2c76f.

---
name: java-developer-skill
description: 为 Java/Spring 后端开发、设计、Review、测试、修复、重构和规则查询提供按需工程约束;不用于无关语言或泛化编程问答。
---

# Java 后端约束

按用户要求交付代码、方案或结论;规则只用于改变当前决策,不替代业务需求和项目契约,不额外增加层、框架、字段或工作流程。

## 工作方式

1. 自包含题直接基于题目处理,不扫描工作区。任务指向项目、文件或变更时,只读取相关代码和构建配置。
2. 简单题通常不读支持文件;普通任务先选 1 个主题,必要时最多 2 个,Review 通常最多 3 个。规则、契约、模板和偏好都计入预算;确缺关键约束时可补读并说明原因,不重复或递归扩展无关文件。
3. 项目规范 > 个人偏好 > 通用建议;只在影响实现时读取 `project/<项目名>.md` 或 `memory.md`,空白和候选值不代表已确认选择。不要未经用户要求写入个人或项目配置。
4. 按任务风险验证,区分实际运行结果与未执行的验证建议;只咨询、设计或 Review 时不修改代码。鉴权、缓存、幂等、消息等只在需求或代码涉及时处理。

下列路径以本文件所在的仓库根目录为基准,而不是用户 Java 项目的工作目录;维护文档和 `scripts/` 不是 Java 规则来源。

## 路由表

仅在主题会改变当前答案时读取;关键词不是强制加载指令。

| 任务或关键词 | 首选参考 |
|---|---|
| Java 基础、命名、日期、金额、集合、空值 | `references/java-core.md` |
| Controller、DTO、REST、校验、分页、响应 | `references/spring-web.md`;需要时读 `references/contracts/` 对应契约 |
| 异常、错误码、日志、`@ControllerAdvice` | `references/exception-validation.md`;需要时读 `references/contracts/` |
| SQL、MyBatis、JPA、索引、分页、迁移 | `references/database-sql.md` |
| 事务、幂等、状态机、Outbox、回滚 | `references/transaction-consistency.md` |
| Redis、TTL、缓存、分布式锁、击穿 | `references/redis-cache.md` |
| MQ、重复消费、重试、死信、顺序消息 | `references/message-queue.md` |
| JWT、OAuth、Token、权限、租户、脱敏、上传、注入、SSRF | `references/security.md` |
| 线程池、超时、重试、限流、熔断、锁 | `references/concurrency-reliability.md` |
| JUnit、Mockito、集成测试、Testcontainers | `references/testing.md` |
| 分层、DAO、Repository、DDD、模块、Entity/DTO/VO | `references/architecture.md` |

## 规则等级与裁决

- **BLOCKER**:已证实的安全、数据或严重可靠性风险,需处理或明确其适用例外。
- **MUST**:适用条件成立时的生产要求。
- **SHOULD**:默认建议,允许有依据的项目、兼容性或性能例外。
- **MAY**:可选偏好。

用户需求决定范围,已有行为决定兼容;实现取舍按安全与数据正确性 > 可靠性与一致性 > 性能 > 可维护性 > 风格裁决。偏好不能放宽安全红线;重构保持行为,不凭方法行数、固定阈值或架构名词判定缺陷。

## 入口协作

按需选择 `/java-design`、`/java-dev`、`/java-review`、`/java-test`;故障用 `/java-fix`,重构用 `/java-refactor`,咨询用 `/java-rules`。无需为简单任务依次加载全部入口。

## 生成、Review 与测试

- 生成:遵守现有类型和接口;仅需要示意结构时读取 `templates/`,占位模板不是可运行实现。
- Review:需求行为和用户点名风险优先。按证据报告问题,未知项标为待确认;缺少文件不证明认证缺失,没有执行计划不证明查询慢。规则等级不自动等于本次缺陷严重性。
- 测试:围绕相关行为选择边界、异常、权限、并发和外部失败路径;Mock 调用次数和覆盖率不能证明数据库事务或协议行为。

Review 可按下面的精简格式输出;只在确有例外时补充例外条件,不编造编号或行号:

```text
[严重性] 规则编号(存在对应规则时)
位置与证据:文件:行号(可确定时)
问题:
风险:
建议:
```

## 适用边界

- 生产代码:仅应用相关规则;Demo、脚本和一次性迁移保留安全及数据正确性边界,允许轻量结构。
- 遗留代码:只改授权范围内的问题,分阶段验证,不一次性重写或清零全部规则。
- 用户明确要求不应用本 Skill:停止应用本 Skill 的约束。