# bkhech-ddd **Repository Path**: fly_do/bkhech-ddd ## Basic Information - **Project Name**: bkhech-ddd - **Description**: 本项目是基于 SpringBoot 的领域驱动设计中的DDD分层架构实现示例 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: http://blog.bkhech.top/ - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2025-12-25 - **Last Updated**: 2025-12-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # bkhech-ddd > 本项目是基于 SpringBoot 的 整洁面向对象分层架构(DDD)实现示例 ## 项目架构图 ![项目架构图](doc/image/架构.png) ## 组件构成 * **ddd-start** * **ddd-adapter** * **ddd-app** * **ddd-client** * **ddd-domain** * **ddd-infrastructure** ## 模块规范 ![Adapter Module](doc/image/adapter.png) ![Application Module](doc/image/application.png) ![Client Module](doc/image/client.png) ![Domain Module](doc/image/domain.png) ![Infrastructure Module](doc/image/infrastructure.png) ## 集成功能列表 - [ ] API 接口 - [x] 统一数据返回 - [x] 统一异常处理 - [ ] Validate校验 - [ ] 接口限流 - [ ] 接口幂等性 - [ ] 接口加签验签 - [x] MySQL - [ ] MyBatis-Plus ## 功能列表 - [x] 用户管理 - [x] 操作日志记录 ## 开发规范 ### 方法名约定 | CRUD操作 | 方法名约定 | | ---------------- | --------------------------------------------------- | | 新增 | create | | 添加 | add | | 删除 | remove(App和Domain层),delete(Infrastructure层) | | 修改 | update | | 查询(单个结果) | get | | 查询(多个结果) | list | | 分页查询 | page | | 统计 | count | ### 命名规范 | 规范 | 用途 | 解释 | | ---------------- | ------------------- | --------------------------------------------- | | xxxCO | Client Object | 客户对象,用于传输数据,等同于DTO | | xxxCmd | Client Request | Cmd代表Command,表示一个写请求 | | xxxQuery | Client Request | Query,表示一个读请求 | | xxxCmdExe | Command Executor | 命令模式,每一个写请求对应一个执行器 | | xxxQueryExe | Query Executor | 命令模式,每一个读请求对应一个执行器 | | xxxVO | Value Object | 值对象 | | xxxEntity | Entity | 领域实体 | | xxxDO | Data Object | 数据对象,用于持久化 | | xxxInterceptor | Command Interceptor | 拦截器,用于处理切面逻辑 | | IxxxService | API Service | xxxService Iterface | | xxxDomainService | Domain Service | 需要多个领域对象协作时,使用DomainService | | xxxValidator | Validator | 校验器,用于校验的类 | | xxxAssembler | Assembler | 组装器,DTO <---> Entity,用于Application层 | | xxxConvertor | Convertor | 转化器,Entity <---> DO,用于Infrastructure层 | ### 事件接收与发布 - 接收事件接口在 adapter 模块,发布事件可看情况允许在 app、domain、infrastructure 模块