用途:在既有 Kotlin 项目中从零创建 RPC 风格 API 端点,或为新领域实体补齐 CRUD 全栈代码,并生成集成测试用 Retrofit 客户端。
主要能力:一次性生成请求/响应模型、Controller、Manager 接口与实现、Factory Bean、Retrofit 客户端和集成测试。遵循约定:读取用 @Get、所有变更用 @Post,ID 一律用查询参数(@QueryValue)而非路径参数;单数名词表示单资源,复数表示集合,动作用子路径如 /update、/delete。Controller 保持薄层,只做委托并加 @ExecuteOn(TaskExecutors.IO)、@Secured,用 .throwOrValue() 解包 Either;业务逻辑集中在 Manager,返回 Either<ClientException, T> 而不抛异常,写操作包在 transaction(db.primary) 中;Repository 仅做数据访问;模型统一放在 module-client,用 companion object 的 from(entity) 转换,禁止内联 data class 与 !! 操作符。
使用方式:先明确领域实体,再按流程生成模型、控制器、Manager 接口与实现、Factory Bean、客户端与测试,最后运行 ./gradlew :app:api-application:test --tests "{Domain}ControllerTest" 及 ./gradlew test 验证。
适用场景:Kotlin + Micronaut + Exposed 项目的新 REST 端点、CRUD 全栈搭建及配套测试。
限制:依赖项目既有的包结构、异常类型(ClientError、ClientException)、DatabaseContext 与 Repository 等基础设施;不适用于非该技术栈或非 RPC 风格约定的项目;具体错误码枚举、测试模式细节与实际执行效果资料未完整提供,需以所在项目约定为准。