VO(值对象) 与PO (持久对象)
VO ,值对象 (Value Object) ,
PO ,持久对象 (Persisent Object),
它们是由一组属性和属性的 get 和 set 方法组成。从结构上看,它们并没有什么不同的地方。但从其意义和本质上来看是完全不同的。
1. VO 是用 new 关键字创建,由 GC 回收的。 
   PO 则是向数据库中添加新数据时创建,删除数据库中数据时削除的。并且它只能存活在一个数据库连接中,断开连接即被销毁。
2. VO 是值对象,精确点讲它是业务对象,是存活在业务层的,是业务逻辑使用的,它存活的目的就是为数据提供一个生存的地方。
PO 则是有状态的,每个属性代表其当前的状态。它是物理数据的对象表示。使用它,可以使我们的程序与物理数据解耦,并且可以简化对象数据与物理数据之间的转换。
3. VO 的属性是根据当前业务的不同而不同的,也就是说,它的每一个属性都一一对应当前业务逻辑所需要的数据的名称。
PO 的属性是跟数据库表的字段一一对应的。 
PO 对象需要实现序列化接口。
引用:http://www.blogjava.net/luofeng225/archive/2009/03/28/262620.html
VO(值对象) 与PO (持久对象)的更多相关文章
- 详细介绍VO(值对象)和PO(持久对象)的区别
		VO,值对象(Value Object),PO,持久对象(Persisent Object),它们是由一组属性和属性的get和set方法组成.从结构上看,它们并没有什么不同的地方.但从其意义和本质上来 ... 
- VO对象和PO对象的区别
		VO,值对象(Value Object),PO,持久对象(Persisent Object),它们是由一组属性和属性的get和set方法组成.从结构上看,它们并没有什么不同的地方.但从其意义和本质上来 ... 
- Java开发各层对象含义 PO,VO,DAO,BO,POJO
		java的几种对象(PO,VO,DAO,BO,POJO)解释 一.PO:persistant object 持久对象,可以看成是与数据库中的表相映射的java对象.最简单的PO就是对应数据库中 ... 
- java对象之----(PO,VO,DAO,BO,POJO)
		转自http://www.cnblogs.com/bluestorm/archive/2012/09/26/2703234.html 一.PO :(persistant object ),持久对象 可 ... 
- Java各种对象(PO,BO,VO,DTO,POJO,DAO,Entity,JavaBean,JavaBeans)的区分
		PO:持久对象 (persistent object),po(persistent object)就是在Object/Relation Mapping框架中的Entity,po的每个属性基本上都对应数 ... 
- Java中各种对象(PO,BO,VO,DTO,POJO,DAO,Entity,JavaBean,JavaBeans)的区分
		PO:持久对象 (persistent object),po(persistent object)就是在Object/Relation Mapping框架中的Entity,po的每个属性基本上都对应数 ... 
- java的几种对象(PO,VO,DAO,BO,POJO)
		一.PO persistant object 持久对象,可以看成是与数据库中的表相映射的java对象.最简单的PO就是对应数据库中某个表中的一条记录,多个记录可以用PO的集合.PO中应该不包含任何对数 ... 
- Java中Vo、Po等对象的解释
		PO:全称是 persistant object持久对象 最形象的理解就是一个PO就是数据库中的一条记录. 好处是可以把一条记录作为一个对象处理,可以方便的转为其它对象. BO:全称是 busines ... 
- java DTO对象与PO对象的相互转换
		2018-09-27 10:27:50 前言: 在实际开发中往往需要DTO对象与PO对象的相互转换: 先说说什么是DTO对象吧,个人觉得DTO就是PO的扩展而已,PO专门指向数据库,DTO作扩展(字段 ... 
随机推荐
- linux whoami 显示当前用户的用户名
			[root@MongoDB ~]# whoami root 
- python 并发编程 多线程 多线程实现并发的套接字通信
			进程内会生成一个主线程,让主线程执行server函数,server函数核心是accept(),让主线程干accept的工作, 建立连接,每建立一个连接应该执行通信函数 每建立一个连接就是生成一个子线程 ... 
- 红帽学习记录[RHCE] ISCSI远程块储存
			目录 iSCSI 定义 组件术语 启动器 目标 ACL 发现 IQN 登录 LUN 节点 门户 TPG 搭建一个iSCSI服务 提供一个iSCSI目标 配置iSCSI客户端 iSCSI 定义 SCSI ... 
- show slave status参数详解
			root@localhost (none)>show slave status\G *************************** 1. row ******************** ... 
- HDU 2100 Lovekey (26进制大数、字符串)
			Lovekey Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Sub ... 
- Leetcode 38.报数 By Python
			报数序列是一个整数序列,按照其中的整数的顺序进行报数,得到下一个数.其前五项如下: 1. 1 2. 11 3. 21 4. 1211 5. 111221 1 被读作 "one 1" ... 
- Office批量授权(VL)版本和激活方法
			Office 2010 Office 2010中文专业增强版 32位 文件名: SW_DVD5_Office_Professional_Plus_2010w_SP1_W32_ChnSimp_CORE_ ... 
- 三校联训 小澳的葫芦(calabash) 题解
			题面:小澳的葫芦[ 题目描述]小澳最喜欢的歌曲就是<葫芦娃>.一日表演唱歌,他尽了洪荒之力,唱响心中圣歌.随之,小澳进入了葫芦世界.葫芦世界有 n 个葫芦,标号为 1~ n. n 个葫芦由 ... 
- setter 和 getter 高级 以及内存管理初级
			setter 和 getter 的演变,紧接setter 和 getter 初级 1.@property 和 @synthesize 这两个关键字的出现,就是为了剔除代码中的setter方法和get ... 
- opencv滤镜-使用opencv实现各种图像滤镜特效
			图像处理-滤镜 链接:https://mangoroom.cn/opencv/image-processing-filter.html opencv滤镜-实现晕影vignetting效果 链接:htt ... 
