33 lines
1.3 KiB
Markdown
33 lines
1.3 KiB
Markdown
|
# 领域模型
|
|||
|
|
|||
|
## 失血模型
|
|||
|
|
|||
|
业务逻辑和应用逻辑都放到服务层中
|
|||
|
|
|||
|
+ service 肿胀的服务逻辑
|
|||
|
+ model:只包含get set方法
|
|||
|
+ dao :数据持久化
|
|||
|
|
|||
|
## 贫血模型
|
|||
|
|
|||
|
贫血模型中包含了一些业务逻辑,但不包含依赖持久层的业务逻辑。这部分依赖于持久层的业务逻辑将会放到服务层中。可以看出,贫血模型中的领域对象是不依赖于持久层的
|
|||
|
|
|||
|
+ service :组合服务 也叫事务服务
|
|||
|
|
|||
|
+ model:除包含get set方法,还包含 单服务 又叫原子服务
|
|||
|
|
|||
|
+ dao:数据持久化
|
|||
|
|
|||
|
## 充血模型
|
|||
|
|
|||
|
service :组合服务 也叫事务服务
|
|||
|
|
|||
|
model:get set方法, 单服务 又叫原子服务,含数据持久化的逻辑
|
|||
|
|
|||
|
充血模型中包含了所有的业务逻辑,包括依赖于持久层的业务逻辑。所以,使用充血模型的领域层是依赖于持久层,简单表示就是UI层->服务层->领域层<->持久层
|
|||
|
|
|||
|
## 涨血模型
|
|||
|
|
|||
|
胀血模型就是把和业务逻辑不想关的其他应用逻辑(如授权、事务等)都放到领域模型中。我感觉胀血模型反而是另外一种的失血模型,因为服务层消失了,领域层干了服务层的事,到头来还是什么都没变。
|
|||
|
|
|||
|
model:get set方法, 单服务又叫原子服务 ,数据持久化的逻辑 还包含组合服务,又叫事务服务
|