当前位置: 首页>JAVA技术>在JAVA里什么是DTO、VO、BO、PO、DO、POJO你真的清楚吗

在JAVA里什么是DTO、VO、BO、PO、DO、POJO你真的清楚吗

作者:hello 4月前 ⋅ 1010 阅读

 

在java里有很多数据对象,但是真的不知道怎么区分,只有理解清楚了这些对象才能正确使用他们

java对象关系图

POJO(Plain Ordinary Java Object)无规则简单的对象,但是代码分层中pojo会被分为VO、BO、 PO、 DTO

VO (view object/value object)表示层对象

解释:前端展示的数据,在接口数据返回给前端的时候需要转成VO

场景:接口层服务中,将DTO转成VO,返回给前台

B0(bussines object)业务层对象

解释:主要在服务内部使用的业务对象,可以包含多个对象,可以用于对象的聚合操作

场景:在服务层服务中,由DTO转成BO然后进行业务处理后,转成DTO返回到接口层

PO(persistent object)持久对象

解释:出现位置为数据库数据,用来存储数据库提取的数据,只存储数据,不包含数据操作

场景:个人理解使用场景,在数据库层中,获取的数据库数据存储到PO中,然后转为DTO返回到服务层中

DTO(Data Transfer Object)数据传输对象

解释:在服务间的调用中,传输的数据对象

场景:DTO是可以存在于各层服务中(接口、服务、数据库等等)服务间的交互使用DTO来解耦

DO(domain object)领域实体对象

DO 现在主要有两个版本:

①阿里巴巴的开发手册中的定义,DO( Data Object)这个等同于上面的PO

②DDD(Domain-Driven Design)领域驱动设计中,DO(Domain Object)这个等同于上面的BO

整个web开发流程中对象间的关系