java 对象术语(PO/POJO/VO/BO/DAO/DTO)

本文详细解释了PO、VO、BO、POJO、DAO、DTO等常见对象模型的概念及其应用场景,包括它们之间的区别与联系,帮助读者更好地理解软件开发中的对象设计。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

PO(persistant object):持久对象

可以看成是与数据库中的表相互映射的Java对象,最简单的PO就是对应数据库中某个表中的一条记录,多个记录可以用PO的集合.PO中不应该包含任何对数据库的操作.可以把一条记录作为一个对象处理,方便转化为其它对象.

VO(value object):值对象

通常用于业务层之间的数据传递,和PO一样也仅仅是包含数据,但应该是抽象出来的业务对象,可以和表对应,也可以不对应.可以自己进行组织,相比于PO可以增加或者减少属性.主要体现在视图对象,对于一个WEB页面,将整个页面的属相封装成VO对象,然后用一个VO对象在控制层和视图层进行传输交互.

BO(business object):业务对象

封装了业务逻辑的Java对象,通过调用DAO方法,结合其它对象进行业务操作.这个对象可以包含一个或者多个其它对象.象形描述为一个对象的行为和动作,也有可能包含其他对象的行为和动作.

POJO(plain ordinary java object):简单无规则java对象

POJO是有一些private 私有属性的对象,对 每一个属性都有get.set方法.作为访问接口. POJO是简单的java对象,不包含任何业务处理逻辑.不继承,不实现其他任何java框架的类或者接口.

一个POJO持久化以后就是PO,
直接用她传递数据,在这个过程中,就是DTO.
直接用来对接表现层就是VO.

DAO(data access object):数据访问对象

主要用来封装对数据库的访问,通过DAO可以把POJO转化为PO,用PO组装VO,DTO.

DTO(data transfer object):数据传输对象
指经过处理的PO,可能增加或者减少属性.
主要用于调用和传输数据.
比如有10个字段,那么PO就有10个属性,页面只需要5个属性,这时候就可以用只有5个属相的DTO来封装数据.在前端使用中也就转化成了VO.

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值