57 lines
2.1 KiB
Plaintext
57 lines
2.1 KiB
Plaintext
---
|
||
description: 若依项目Java代码生成规则 - 阿里巴巴规范、命名、实体类、MyBatis、接口路径
|
||
alwaysApply: true
|
||
---
|
||
|
||
# 项目背景
|
||
|
||
你的web-api是一个基于若依(RuoYi)框架的Spring Boot项目。
|
||
|
||
# 代码生成规则
|
||
|
||
## 1. 命名规范
|
||
- 所有Java代码必须符合**阿里巴巴Java开发手册规范**(包括命名、注释、异常处理等)。
|
||
- 类名、方法名、变量名必须严格使用**驼峰命名法**(CamelCase)。
|
||
- 类名:UpperCamelCase(如 `TosAssetService`)
|
||
- 方法名、变量名:lowerCamelCase(如 `getAssetById`、`assetList`)
|
||
|
||
## 2. 实体类(Entity/Domain)
|
||
- 必须使用 **Lombok** 注解简化代码:
|
||
```java
|
||
@Data
|
||
@TableName("tos_asset") // 或 @Entity
|
||
public class TosAsset {
|
||
// 字段...
|
||
}
|
||
```
|
||
- 所有字段和类**必须添加清晰的中文或英文注释**(推荐使用中文)。
|
||
- 必须包含 `serialVersionUID`(如果适用)。
|
||
|
||
## 3. 数据库操作(MyBatis)
|
||
- 必须使用 **MyBatis**(推荐 MyBatis-Plus)进行数据库操作。
|
||
- **禁止**在 `mapper.xml` 中编写过于复杂的SQL语句。
|
||
- 复杂查询应在 Service 层使用 Java 代码组合,或使用 MyBatis-Plus 的 LambdaQueryWrapper。
|
||
- Mapper 接口方法名必须语义清晰,并添加注释。
|
||
|
||
## 4. Controller 接口路径
|
||
- 给 **portal-ui**(前端门户)统一以 `/api` 开头,例如:
|
||
```java
|
||
@GetMapping("/api/assets/list")
|
||
```
|
||
- 给 **admin-ui**(管理后台)使用以 `/` 开头(保持若依原有风格),例如:
|
||
```java
|
||
@GetMapping("/assets/list")
|
||
```
|
||
- 建议在不同 Controller 中区分(如 `AiPortalController` vs `AiManagerController`)。
|
||
|
||
## 5. 其他要求
|
||
- 所有新增类必须包含完整的 Javadoc 注释。
|
||
- Service 实现类必须实现对应接口。
|
||
- 避免直接在 Controller 中处理业务逻辑,保持分层清晰。
|
||
- 异常处理统一使用 `ServiceException` 或项目自定义异常。
|
||
- 业务逻辑遵循mvc原则放在service
|
||
- redis key 统一放在RedisKey类
|
||
|
||
|
||
**始终严格遵守以上规则生成所有Java代码。**
|