---
description: Java编码红线（与 .cursor/rules/java-coding-standards.mdc 同步）
globs: ["**/*.java"]
alwaysApply: true
---

# Java 编码红线（RuoYi Cloud）

1. **禁止**手动 new Service/Mapper，统一 `@Autowired` 注入
2. **禁止** Controller 直接注入 Mapper
3. **禁止** `RuntimeException`，统一 `ServiceException("中文提示")`
4. **禁止** Controller try-catch 吞异常
5. **禁止**裸判空，使用 `StringUtils.isNotEmpty()` 等
6. **禁止**魔法数字/字符串，用常量或字典
7. **禁止**多层 if-else，用卫语句
8. **禁止**循环内单条 Mapper 调用，用 XML `<foreach>` 批量
9. 时间用 `java.util.Date`，写入用 `DateUtils.getNowDate()`
10. 事务 `@Transactional(rollbackFor = Exception.class)` 只加 ServiceImpl

## 禁止引入

MyBatis-Plus、yudao（CommonResult、ServiceExceptionUtil 等）
