首页 > 编程语言 > 详细

Java基础 - AO BO DO PO VO DAO DTO POJO

时间:2019-06-27 14:42:56      阅读:99      评论:0      收藏:0      [点我收藏+]

AO

Application Object 应用对象。

在Web层与Service层之间抽象的复用对象模型,极为贴近展示层,复用度不高。

BO

Business Object 业务对象。

由Service层输出的封装业务逻辑的对象。这个对象可以包括一个或多个其它的对象。

BO描述一个对象的行为和动作,也涉及到基于它的其他对象的一些行为和动作。比如一个“人”的业务逻辑,有睡觉,吃饭,工作,上班等等,还有和别人合作发生的动作。这样处理业务逻辑时,我们就可以针对BO去处理。

DO

Data Object 数据对象。

与数据库表结构一一对应,通过DAO层向上传输数据源对象。

PO

Persistant Object 持久对象。

数据库表中的记录在Java对象中的显示状态。最形象的理解就是一个PO就是数据库中的一条记录。

VO 

View Object 显示层对象。

通常是Web向模板渲染引擎层传输的对象。对于一个WEB页面将整个页面的属性封装成一个对象,然后用一个VO对象在控制层与视图层进行传输交换。

DAO

Data Access Object 数据访问对象。

这个和上面几个O区别最大,基本没有互相转化的可能性和必要。主要用来封装对数据库的访问。通过它可以把POJO持久化为DO/PO,用DO/PO组装出来VO、DTO。

DTO

Data Transfer Object 数据传输对象。

DTO是经过处理后的DO/PO,可以增加或者减少PO的属性。

主要用于远程调用等需要大量传输对象的地方。比如一张表有100个字段,那么对应的DO/PO就有100个属性。但是我们界面上只要显示10个字段,客户端在获取数据时,没有必要把整个全部字段传递到客户端,这时我们就可以用只有这10个属性的DTO来传递结果到客户端,这样也不会暴露服务端表结构。到达客户端以后,如果用这个对象来对应界面显示,那此时它的身份就转为VO 。

POJO

Plain Ordinary Java Object 简单Java对象。

POJO是一种概念或者接口,身份及作用随环境变化而变化。它不包含业务逻辑或持久逻辑等,不具有任何特殊角色,不继承或不实现任何其它Java框架的类或接口。

一个POJO持久化以后就是PO。直接用它传递、传递过程中就是DTO。直接用来对应表示层就是VO。

 

领域模型命名规约:

数据对象:xxxDO,xxx即为数据表名。

数据传输对象:xxxDTO,xxx为业务领域相关的名称。

展示对象:xxxVO,xxx一般为网页名称。

POJO是DO/DTO/BO/VO的统称,禁止命名成xxxPOJO。

Java基础 - AO BO DO PO VO DAO DTO POJO

原文:https://www.cnblogs.com/helios-fz/p/11096711.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!