编程中可以接触到如下术语:
- BO
- VO
- DO
- DTO
- PO
- AO
- POJO
- Entity
- Domain
- Bean
- JavaBean
那么这些到底是什么含义呢?
PO
PO 是 Persistant Object 对象的简称,称为持久对象
简单来说,一个 PO 对应数据库中的一条记录
BO
BO 是 Business Object 对象的简称,称为业务对象
一个 BO 可以包含多个 PO
VO
VO 一种说法是 Value Object(值对象),一种说法是 View Object(表现层对象)
DTO
DTO 是 Data Transfer Object 对象的简称,称为数据传输对象
AO
DO
DO 是 Doamin Object 对象的简称,称为领域对象
Bean
JavaBean
Entity
Entity 简称实体,在 JPA 规范中泛指和表映射的对象
简单来说,一个 Entity 对应数据库中的一条记录
Domain
POJO
而实际编程中,以个人经验来说,大致有六类场景对象:
- 表单页面向数据接口传递查询参数或表单信息
- 数据接口向表单页面传递展示数据
- 方法间传递复杂参数对象
- ORM 框架表映射对象
- 多表关联查询结果映射对象
- 特殊更新操作或查询操作参数对象