领域驱动模型设计与微服务架构落地(三)

1.领域模型

领域模型( domain model 是对领域内的概念类或现实世界中对象的可视化表示。
这种官方概念一向是最复杂难以理解的了,其实我们的领域模型在我们的业务当中也有一个名字,叫做
业务对象模型。很明显,我们能够从名字上就能够看出来,我们的业务对象模型是用来描述业务对象之
间的引用关系的。
那么什么是我们的业务对象呢。实际上我们的业务对象分为三种
业务角色 ,业务角色表示的是一个角色承担的一系列责任。比如收银员,他的责任是计算商品价
格,收钱,找零,甚至退换货。
业务实体 ,业务实体表示的是其实你使用或者可交付的工件,资源,事件。比如电商项目中的商
品。你需要给卖家打印的发票。
业务用例 ,实际上业务用例显示的是协作角色与业务实体之间如何执行工作流程,也就是我们的业
务链路。
实际上,业务对象模型就是将实体的概念以及行为的概念结合起来了。也就是说,整理起来 ,就是你的 业务逻辑流转以及中途所需要的角色。
那么领域模型实际上也分为很多的种类

2.失血模型

第一种叫做失血模型,失血模型实际上就是我们的对象模型中只包含我们的 get set 方法,像我们的排序,分页等等任何的通用性操作都不会包含在我们的对象中。这种逻辑实际上会让我们的领域模型比较傻瓜式。什么意思呢?我们的失血模型是没有Dao 层的,我们所有的业务会全部写在我们的 Service 当 中。所以,一般情况下,我们是不推荐用这种模型的,不过,也有同学正在使用这种方式。
举例代码 ;
//基于失血模型的模型实现
public class User implements Serializable {
private Long id;
private String age;
//创建用户时间
private Date createTime ;
//最后修改用户信息时间
private Date UpdateTime;
public Date getCreateTime() {
return createTime;
}
public Date getUpdateTime() {
return UpdateTime;
}
public String getAge() {
return age;
}
public Long getId() {
return id;
}
public void setAge(String age) {
this.age = age;
}
public void setId(Long id) {
this.id = id;
}
}
持久化操作:
//定义业务逻辑接口
public interface UserDao{
public void save(User user){}
public void findAll(){}
}
//业务逻辑
  • 3
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

yongge

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

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

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

打赏作者

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

抵扣说明:

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

余额充值