参考:
1、阿里巴巴Java开发手册中的DO、DTO、BO、AO、VO、POJO定义:
https://www.cnblogs.com/EasonJim/p/7967999.html
2、Java中 VO、 PO、DO、DTO、 BO、 QO、DAO、POJO的概念:
https://www.hollischuang.com/archives/553
3、阿里巴巴开发手册:
http://www.cnblogs.com/EasonJim/p/6436387.html
分层领域模型规约:
-
BO( Business Object)
:业务对象,通常位于中间层。主要作用是把业务逻辑封装为一个对象,这个对象可以包括一个或多个其它的对象。
eg:求职简历,每份简历都包括教育经历、项目经历等,我们可以让教育经历和项目经历分别对应一个 PO,这样在我们建立对应求职简历的 BO 对象处理简历的时候,让每个 BO 都包含这些 PO 即可。 -
VO( View Object)
:
(1)显示层对象,通常是Web向模板渲染引擎层传输的对象。
(2)值对象,常用于业务层之间的数据传递,和 PO 一样也是仅仅包含数据而已,但 VO 应该是抽象出的业务对象,可以和表对应,也可以不对应,这根据业务的需要。
eg:如果锅碗瓢盆分别为对应的业务