更新 knowledge.md

This commit is contained in:
oyo
2025-10-23 14:11:54 +08:00
parent bad7025b00
commit 4be514aff0

View File

@@ -1289,8 +1289,8 @@ class CreateUserBto { //对应实体user
- **自定义RPC和手写方法关系:** 两者都可手动实现服务层方法。区别需要被其他模块订阅用自定义RPC只是API私有调用不需要外部开放用手写方法
- **关键配置:** 类名(驼峰首字母大写以Service结尾)、是否公开、方法名(驼峰,首字母小写)、请求参数、返回值。分页查询参数为Qto类型时Qto已包含from、size、scrollId属性无需额外参数
- **TOCO中RPC存储:** RPC在TOCO中只存储方法签名不存储执行逻辑。了解实现逻辑需阅读RPC对应代码
- **参数类型:** RPC参数**只能**为QTO、BTO、Enum、EO、基本类型可为单值或列表。对象类型优先用QTO、BTO**禁用**VO和自定义结构如Object
- **返回值类型:** RPC返回值**只能**为DTO、Enum、Eo、基本类型可为单值或列表**禁用**VO、QTO、BTO、自定义结构如Object。对象类型优先用DTO
- **参数类型:** RPC参数**只能**为QTO、BTO、Enum、EO、基本类型可为单值或列表。对象类型优先用QTO、BTO**禁用**VO、Map、和自定义结构如Object
- **返回值类型:** RPC返回值**只能**为DTO、Enum、Eo、基本类型可为单值或列表**禁用**VO、QTO、BTO、Map、自定义结构如Object。对象类型优先用DTO
- **TOCO中json结构:** TOCO中DTO用json表示示例
```json
{
@@ -1319,8 +1319,8 @@ class CreateUserBto { //对应实体user
- **创建方式:** 通过TOCO创建需指定参数和返回值
- **存储特点:** TOCO只存储URI和方法签名不存储执行逻辑。了解实现需阅读对应代码
- **关键配置:** uri(/api/${moduleName}/xxx如/api/user/create全局唯一)、类名(以Controller结尾)、方法名(驼峰小写)、请求参数、返回值。分页查询参数为Qto时已包含from、size、scrollId属性无需额外参数
- **参数类型:** 只能为QTO、BTO、EO、Enum、基本类型可为单值或列表。对象类型优先用QTO、BTO。禁用DTO和自定义结构
- **返回值类型:** 脚手架自动包装返回值(code、message、data)。只能为VO、Enum、EO、基本类型可为单值或列表。禁用DTO、QTO、BTO、自定义结构。对象类型优先用VO
- **参数类型:** 只能为QTO、BTO、EO、Enum、基本类型可为单值或列表。对象类型优先用QTO、BTO。禁用DTO、Map和自定义结构
- **返回值类型:** 脚手架自动包装返回值(code、message、data)。只能为VO、Enum、EO、基本类型可为单值或列表。禁用DTO、QTO、BTO、Map、自定义结构。对象类型优先用VO
- **json结构:** API用json表示示例
```json
{
@@ -1705,6 +1705,7 @@ TOCO严格遵照分层规则必须严格遵守否则会产生严重后果
- 本节描述参数选择的**优先级原则**,非绝对限制
- API参数绝对限制见2.14章节
- "优先使用QTO/BTO"指在满足规范前提下,根据场景选择最合适的参数类型
- TOCO不支持Map类型
#### 4.2 并发数据保护最佳实践: