type
Post
status
Published
date
Jan 5, 2022
slug
summary
介绍 POJO、DO、DTO、VO、BO 等对象的含义和用途
tags
项目方案
category
技术分享
icon
password

POJO
- 普通 Java 对象
指只有setter/getter/toString的简单Java类
- 包括DO/DTO/BO/VO(即他们的统称)
- 阿里编码归约的命名风格中提到:
POJO是DO/DTO/BO/VO的统称,禁止命名成xxxPOJO
DO 对象
(Data Object)
- 数据对象
属性和数据表结构一一对应,用于Service 层和 DAO 层数据传递
- 通常 DO 对象也用 POJO 来指代
- 阿里编码归约命名风格:
数据对象:xxxDO,xxx即为数据表名
DTO 对象
(Data Transfer Object)
- 数据传输对象
用于 Service 层和 DAO 层数据传递。但通常是现有的实体类无法承载复杂数据结果,需要对现有对象进行扩展,或者只取有含义,需要返回的业务字段。
- 业务对象,Service 层将 DAO 层返回的 POJO 对象进一步处理封装,成了 BO 对象
VO
- (View Object)表现层(展示)对象,通常是后端向前端传输的对象,也就是用来封装响应参数的对象,有时候也叫 Request 对象 或 Query 对象
- (Value Object) 值对象,乘载 Controller和 Service 层数据流向,并响应给前端
当业务复杂性更强时,引入BO(Business Object),用来接收前端参数即将VO 拆分为两个对象
BO
(Business Object)
Relate Posts