本文主要是介绍什么是DTO、VO、BO、PO、DO、POJO,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
什么是DTO、VO、BO、PO、DO、POJO
-
含义
POJO定义的是无规则简单的对象,日常代码分层中POJO会被分为VO、BO、PO、DTO都是典型的POJO,但是BO、DAO一般不是POJO,通过各层POJO的使用,可以提高代码的维护性和可读性。
-
五大O的主要使用场景
-
VO(表示层对象)
前端展示的数据,接口数据返回给前端时需要转为VO,在接口层服务中,将DTO转为VO之后返回给前台
-
BO(业务层对象)
主要在业务内部使用的业务对象,在服务层服务中,由DTO转为BO然后进行业务处理后,转为DTO返回到接口层
理解:BO对象可以包含一个或者多个其他的对象,例如一个教室里面有桌子、凳子、黑板、垃圾桶等,我们可以将教室看作一个BO,剩下的都看作为一个个PO,这样就可以建立一个对应教室的BO对象处理教室,BO里面就包含了这些PO,在进行业务逻辑处理时,就可以针对BO去处理
-
PO(持久层对象)
负责存储数据库总提取的数据,不包含对数据的操作;在数据库层中,获取数据库数据存储到PO中,然后转为DTO返回到服务层中
-
DO(领域实体对象)
两个版本,等同于上面的BO和PO,从现实世界中抽离出来的业务实体
-
DTO(数据传输对象)
用于表示一个数据传输对象,通常用于不同服务或服务不同分层之间的数据传输
-
-
举例
-
Controller层
常见的为将DTO转为VO,将Service层传递过来的DTO转为VO表示数据然后返回给前端
-
Service、Manager层
常见的转换为DO转BO、BO转DTO,对数据进行处理之后返回DTO对象
-
DAO层
DTO转为换DO,实现与数据库的交互
-
领域模型定义
- Entity 表结构实体,对应DO
- BO业务实体
- VO视图实体,DTO可共用
-
这篇关于什么是DTO、VO、BO、PO、DO、POJO的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!