1、将当前项目功能结构重构为下面的结构,要求必须保留原来所有的代码
|--ddd4j-boot
|----ddd4j-boot-bom                       #BOM依赖管理
|----ddd4j-boot-dependencies                   #公共依赖,便于依赖组件版本控制
|----ddd4j-boot-core                          #核心模块,基础API、公共对象(BaseController、BaseService、BaseMapper等)、异常对象
|----ddd4j-boot-cmpt                          #组件模块父模块
|------ddd4j-boot-cmpt-crypto                  #加解密组件
|------ddd4j-boot-cmpt-datascope                #数据权限组件
|------ddd4j-boot-cmpt-license                 #License组件
|------ddd4j-boot-cmpt-logs                   #日志组件
|------ddd4j-boot-cmpt-pf4j                   #PF4J插件组件
|------ddd4j-boot-cmpt-cola                   #COLA组件
|------ddd4j-boot-cmpt-satoken                 #SaToken组件
|------ddd4j-boot-cmpt-jackson 
|------ddd4j-boot-cmpt-webmvc   
|------ddd4j-boot-cmpt-webflux 
|------ddd4j-boot-cmpt-kafka    
|------ddd4j-boot-cmpt-external  
|----ddd4j-boot-parent                        #子模块的父级工程,定义Maven配置
|----ddd4j-boot-samples                  #具体业务服务
|--------ddd4j-boot-sample-druid               #集成Druid数据源示例
|--------ddd4j-boot-sample-druid-activemq       #集成Druid数据源 + ActiveMQ 示例
|--------ddd4j-boot-sample-druid-amqp          #集成Druid数据源 + RabbitMQ 示例
|--------ddd4j-boot-sample-druid-rocketmq       #集成Druid数据源 + RocketMQ 示例
|--------ddd4j-boot-sample-druid-war           #集成Druid数据源打War包示例
|--------ddd4j-boot-sample-hikaricp        #集成 Hikaricp数据源示例
|--------ddd4j-boot-sample-hikaricp-activemq    #集成 Hikaricp数据源 + ActiveMQ 示例
|--------ddd4j-boot-sample-hikaricp-amqp       #集成 Hikaricp数据源 + RabbitMQ 示例
|--------ddd4j-boot-sample-hikaricp-rocketmq    #集成 Hikaricp数据源 + RocketMQ 示例
|--------ddd4j-boot-sample-hikaricp-war    #集成 Hikaricp数据源打War包示例
|--------ddd4j-boot-sample-r2dbc-webflux        #集成 R2dbc + WebFlux 示例
|--------ddd4j-boot-sample-xxx 更多其他模块
2、注意 jeebiz-boot-api 对应着 ddd4j-boot-core,其他重构都是有着对应关系,没有的模块,按规则自己添加
3、重构完成后,需要从git历史记录拉去文件,与重构后的目录和文件,使用 md5 一一比对,不能少一个文件。
4、对比后,在进行2次对比检查

再次进行验证,必须从 git 历史记录与重构后的目录和文件一一对比,确定无误后,可清理旧的目录

进行代码编译,修复编译发现的问题,可能比较多的是pom配置错误导致的编译失败

根据最新目录结构,对根目录的 README.md 进行修正和完善




1、对非示例项目的 package 进行调整
- 从 io.hiwepy.boot.api 调整为 io.ddd4j.boot.core
- 其他的 io.hiwepy.boot 调整为 io.ddd4j.boot
- io.ddd4j.boot.autoconfigure 目录调整为与工程 ddd4j-boot-cmpt-akka 对应,如:io.ddd4j.boot.cmpt.akka
2、调整完整后,进行代码编译,修复编译发现的问题
3、检查全部文件,确保不在有 jeebiz、tianyin 等字样
4、从git历史记录,与调整后的文件内容进行对比,确保不能缺失一个文件
5、再次从git历史记录,与调整后的文件内容进行对比,确保不能缺失一个文件,只对比主要内容,不对比引入和路径
6、清理不在使用的旧目录,比如 io.hiwepy

1、对所有的示例项目进行 DDD重构
2、可参考文档 https://blog.csdn.net/dividividiv/article/details/151934659 和 https://cloud.tencent.com/developer/article/2554516 内容,把 目前十分简单的Demo 改为 订单操作的示例
3、采用模块化设计,按DDD分层思想组织代码结构,期望调整后的结构:

├── src/main/java/com/example/order/
│   ├── application/           // 应用层
│   │   ├── command/           // 命令对象
│   │   ├── dto/               // 数据传输对象
│   │   ├── service/           // 应用服务
│   │   └── mapper/            // DTO与领域对象映射
│   ├── domain/                // 领域层
│   │   ├── model/             // 领域模型
│   │   │   ├── entity/        // 实体
│   │   │   ├── vo/            // 值对象
│   │   │   └── aggregate/     // 聚合根
│   │   ├── repository/        // 仓储接口
│   │   └── service/           // 领域服务
│   ├── infrastructure/        // 基础设施层
│   │   ├── persistence/       // 持久化实现
│   │   ├── messaging/         // 消息组件
│   │   └── config/            // 配置类
│   └── interfaces/            // 用户接口层
│       ├── rest/              // REST接口
│       └── facade/            // 外部服务接口
└── src/main/resources/
    ├── application.yml        // 应用配置
    └── db/migration/          // 数据库迁移脚本
    ... 其他目录

4、除了给出的 order 示例,把原有的demo 示例,按 ddd 结构进行整理
5、给接口的入参对象,返回对象,加上 swagger3注释,同时接口也增加注释
6、移除示例代码中,多余的目录和文件

作者:Jeebiz  创建时间:2025-12-03 09:52
最后编辑:Jeebiz  更新时间:2025-12-07 17:26