又在复制基础代码?
统一响应、异常处理和 TraceId 自动接入,少维护一套跨项目重复代码。
少写基础设施,多写业务。
响应、异常、链路、权限,不必每个项目重新拼装。Coco 把通用能力准备好,让你专注于产品本身。
<dependency>
<groupId>io.github.patton174</groupId>
<artifactId>coco-spring-boot-starter</artifactId>
</dependency>
统一响应 · 全局异常 · TraceId
本页介绍当前主干的 17 项功能标识,包含 Codegen 兼容项;2.0.3 已发布,具体开关与配置请查阅文档。
每个项目都有自己的业务,但很多准备工作是相同的。
统一响应、异常处理和 TraceId 自动接入,少维护一套跨项目重复代码。
用 YAML 或注解选择能力,构建时裁剪关闭的模块,运行时沿用同一份功能计划。
限流、幂等和锁提供可替换的存储接口;结合部署方式显式选择 Redis 等实现。
Controller 还是普通 Spring 代码。用户、组织、认证提供者和事务边界由你决定。
默认值有明确边界,需要定制时有清晰的替换入口。
以下为职责示意:每个项目都要维护这些集成点。
@Configuration
class WebInfrastructure {
// ResponseBodyAdvice
// RestControllerAdvice
// TraceId filter
// Access-log filter
// Context propagation
}
使用 coco-parent 管理版本后,引入 Starter。业务仍使用普通 Spring。
<dependency>
<groupId>io.github.patton174</groupId>
<artifactId>coco-spring-boot-starter</artifactId>
</dependency>
统一响应、全局异常与 TraceId 默认生效。数据库、Redis、认证、租户及其他外部服务仍需按需配置。
领域模型 · Controller · 事务
统一接入 · 自动装配
按需选择的基础设施能力
公共契约 · 上下文 · 日志
服务端基础设施。独立运行,不依赖 Admin 或 Generate。
基于 Framework 的 ERP 产品,持有用户、组织与业务流程。
开发期生成普通源码,生成结果由业务仓库维护。
Admin → Framework(运行时);Generate → 业务源码(开发期)。
采用 coco-parent,添加 Starter;版本以正式发布记录为准。
通过 YAML 调整功能开关,配置需要的数据库或外部服务。
编写普通 Spring Controller,运行 Spring Boot 应用。
请求接口,检查统一响应、异常输出与 TraceId。