DDD领域驱动模型看起来很抽象,自己搭建的Demo希望能帮助大家

概要

学习一下领域驱动设计(DDD),我们公司也使用了DDD,可以先对比一下传统三层架构。

三层架构中大部分业务都集中在service层,业务量大的话,业务层就会特别臃肿。

DDD领域驱动设计中,对业务进行了领域管理,对业务进行了管理。(我的理解是这样)

自己搭了一个DDD模型项目

在这里插入图片描述

DDD模型项目

`

  1. 创建maven项目
    在这里插入图片描述

  2. 项目名称
    在这里插入图片描述

  3. 父工程依赖管理
    在这里插入图片描述

  4. 建立5个子项目
    在这里插入图片描述
    demonstration-oneself-controller-------------适配层

    demonstration-oneself-application-----------应用层

    demonstration-oneself-domain---------------领域层

    demonstration-oneself-infrastructure-------基础设施层

    demonstration-oneself-api--------------------为远程RPC提供服务
    在这里插入图片描述

不好意思,流程图画的有些丑,之前没用过画流程的工具。。。。。

1)适配层(AdapterLayer):负责对前端展示路由和适配,adapter就相当于MVC中的controller;
2)应用层(Application Layer):主要负责获取输入,组装上下文,参数校验,调用领域层做业务处理,如果需要的话,发送消息通知等。层次是开放的,应用层也可以绕过领域层,直接访问基础实施层;
3)领域层(Domain Layer):主要是封装了核心业务逻辑,并通过领域服务(Domain Service)和领域对象(Domain Entity)的方法对App层提供业务实体和业务逻辑计算。领域是应用的核心,不依赖任何其他层次;
4)基础实施层(Infrastructure Layer):主要负责技术细节问题的处理,比如数据库的CRUD、搜索引擎、文件系统、分布式服务的RPC等。

web应用设计

这里我打算建一个common工具类,里面引入web依赖,在项目api层引入common依赖
在这里插入图片描述
在这里插入图片描述
controller层中建立启动类
在这里插入图片描述

依赖关系

api层依赖common
application层依赖api层和infrastructure层
controller依赖application层
domin层也直接引入infrastructure层

小结

文章先到这里,后续都会用这个项目更新代码,不对的地方希望大家指正。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小泽猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值