BO,PO,VO,DTO的区别

简介: BO,PO,VO,DTO的区别

image.png


由于项目要求VO,BO等互相转型,但是查了很多都是瞎说一同,最近看了一下阿里巴巴Java开发手册,感觉还是阿里的老哥们说的明白,这里分享一下。

1.应用分层

这里首先了解一下应用分层

image.png

这里可以看到是我们大部分mvc架构的分层情况,多了Manager层,Manager层为通用业务处理层,它有如下特征:

  1. 对第三方平台封装的层,预处理返回结果及转化异常信息;
  2. 对Service层通用能力的下沉,如缓存方案、中间件通用处理;
  3. 与DAO层交互,对多个DAO的组合复用。

2.分层领域模型规约

DO(DataObject):此对象与数据库表结构一一对应,通过DAO层向上传输数据源对象。

DTO(Data Transfer Object):数据传输对象,Service或Manager向外传输的对象。

BO(Business Object):业务对象,由Service层输出的封装业务逻辑的对象。

AO(ApplicationObject):应用对象,在Web层与Service层之间抽象的复用对象模型,

极为贴近展示层,复用度不高。

VO(View Object):显示层对象,通常是Web向模板渲染引擎层传输的对象。

Query:数据查询对象,各层接收上层的查询请求。注意超过2个参数的查询封装,禁止

使用Map类来传输。

POJO:POJO专指只有setter / getter / toString的简单类,包括DO/DTO/BO/VO等。


相关文章
|
设计模式 开发框架 前端开发
项目开发中,真的有必要定义VO,BO,PO,DO,DTO这些吗?
存在即是合理的,业务复杂,人员协同性要求高的场景下,这些规范性的东西不按着来虽然不会出错,程序照样跑,但是遵守规范会让程序更具扩展性和可读性,都是前辈血淋淋的宝贵经验,为什么不用?
|
2月前
|
设计模式 开发框架 Java
分清 PO、VO、DAO、BO、DTO、POJO 含义
分清 PO、VO、DAO、BO、DTO、POJO 含义
|
Java 数据库
POJO、PO、DTO、DAO、BO、VO需要搞清楚的概念
POJO 全称为:Plain Ordinary Java Object,即简单普通的java对象。一般用在数据层映射到数据库表的类,类的属性与表字段一一对应。 PO 全称为:Persistant Object,即持久化对象。
31839 1
|
6月前
|
设计模式 开发框架 前端开发
VO、PO、DTO的区别
VO、PO、DTO的区别
523 3
|
6月前
|
前端开发 Java 数据库连接
PO、VO、DAO、BO、DTO、POJO之间的差异与联系
PO、VO、DAO、BO、DTO、POJO之间的差异与联系
259 0
|
前端开发 Java 数据库
DTO、TO、VO、PO、DO、BO、AO、DAO、POJO
DTO、TO、VO、PO、DO、BO、AO、DAO、POJO
106 0
|
设计模式 开发框架 前端开发
真的有必要定义VO,BO,PO,DO,DTO吗?
今天给大家带来一篇关于VO,BO,PO,DO,DTO的文章,阅读完这篇文章之后,希望大家对VO,BO,PO,DO,DTO有自己的见解。
306 1
|
设计模式 前端开发 Java
Java开发中PO、VO、DAO、BO、DTO、POJO 含义
可以看成是与数据库中的表相映射的java对象。使用 Mybatis 来生成 PO 是不错的选择。
376 0
|
设计模式 消息中间件 开发框架
别乱分层,PO、VO、DAO、BO、DTO、POJO 到底应该用在哪里,你知道吗?
别乱分层,PO、VO、DAO、BO、DTO、POJO 到底应该用在哪里,你知道吗?
|
JSON 人工智能 前端开发
VO,BO,PO,DO,DTO的区别
VO,BO,PO,DO,DTO的区别