JavaEE PO VO BO DTO POJO DAO 整理总结
佩服能将复杂难懂的技术,抽象成简单易懂事物的人。
厌恶将简单易懂的技术,添加一堆专业术语将别人弄的头晕目眩的人。
PO VO BO DTO POJO DAO 总体一览:

1.DAO[data access object]数据访问对象
DAO层对开发人员黑盒,由架构师设计封装。
在很长一段时间内,我将它理解为对数据库的访问,后面随着项目的积累。
发现自己的理解相对狭隘,对数据访问不仅仅指的是对数据库的访问。
假如A系统调用B系统的服务获取数据,这时候A系统对B系统访问数据对象的封装也可以称为DAO。
2.DTO[data transfer object]数据传输对象
假设数据表中存在20个字段,但是在页面展示列表的时候,这20个字段显然都不会用到。
我想对其中的5个字段进行展示,而且这5个字段展示的时候,也并不是数据库中他们原有的样子。
还需要进行计算、截取、业务代码转名称 .....等等
数据传输对象因此而被诞生,一是能提高数据传输的速度,二能隐藏后端表结构。
3.PO[persistant object]持久层对象
持久对象属性和数据库中的字段是一一对应的,数据库中的一条数据可以理解为一个持久对象。
因ORM框架的广泛使用而被引入到 JavaEE 项目设计当中。
4.BO[bussiness object]业务对象
业务对象顾名思义是在业务处理中抽象出来的对象,里面除了get/set 方法外,也可以有对字段进行业务处理的方法。
假设你要对一个班级进行业务处理,其中的学生、教师、甚至是桌椅板凳都是业务对象的组成部分。
当然其中的学生、教室....都可以是和数据库对应的PO。
5.VO[value object]值对象
值对象也可以称做页面对象,如果称做页面对象,那门它所代表的将是整个页面展示层的对象。
可以由需要的业务对象进行的换算转换而来。
如果称呼他为值对象的话,那门他可以理解为存放业务对象的一个地方。
假设锅碗瓢盆分别为对应的业务对象的话,那门整个碗柜就是一个值对象。
4.POJO[plain ordiary java object] 简单java对象
简单java对象应该是JavaEE世界里面最灵活的对象。
在简单系统中,如果从数据库到页面展示都是POJO的话,它可以是DTO。
如果从数据库中到业务处理中都是POJO的话,他也可以是BO。
同样如果从数据库到整个页面的展示的话,它同样可以是VO。
小结:
各个数据对象之间的转换是相当灵活的,在项目中可以定义上述对象的全部和其中的几种类型,这取决与架构师和需求。
在大型项目中,架构师在项目初期的任务除了搭建起整个开发环境以外,定义在系统中流转的数据结构对象同样是重重之重。
这项工作需要许多项目的积累和长期对软件开发的思考,多实践,多思考,提供最合适的数据对象解决方法,方能展现架构师的魅力。
JavaEE PO VO BO DTO POJO DAO 整理总结的更多相关文章
- PO VO BO DTO POJO DAO(转)
2EE开发中大量的专业缩略语很是让人迷惑, 特别是对于刚毕业的新人来说更是摸不清头脑.若与公司大牛谈技术人家出口就是PO VO BO DTO POJO DAO 等,让新人们无比仰慕大牛. PO(bea ...
- PO VO BO DTO POJO DAO之间的关系
J2EE开发中大量的专业缩略语很是让人迷惑,尤其是跟一些高手讨论问题的时候,三分钟就被人家满口的专业术语喷晕了,PO VO BO DTO POJO DAO,一大堆的就来了. PO:persistant ...
- PO,VO,BO,DTO,POJO(POCO),DAO的区别(转载)
PO:persistant object持久对象 最形象的理解就是一个PO就是数据库中的一条记录.好处是可以把一条记录作为一个对象处理,可以方便的转为其它对象. BO:business object业 ...
- Java中DAO/DTO/PO/VO/BO/QO/POJO
ORM:是Object Relational Mapping(对象关系映射)的缩写. 通俗点讲,就是将对象与关系数据库绑定,用对象来表示关系数据.在O/R/M的世界里,有两个基本的也是重要的东东需要了 ...
- PO BO VO DTO POJO DAO 概念及其作用
PO BO VO DTO POJO DAO 概念及其作用(附转换图) 博客分类: java javadaovopojobo J2EE开发中大量的专业缩略语很是让人迷惑, 特别是对于刚毕业 ...
- 转:PO BO VO DTO POJO DAO概念及其作用
J2EE开发中大量的专业缩略语很是让人迷惑,尤其是跟一些高手讨论问题的时候,三分钟就被人家满口的专业术语喷晕了,PO VO BO DTO POJO DAO,一大堆的就来了(听过老罗对这种现象的批判的朋 ...
- [转]PO BO VO DTO POJO DAO概念及其作用(附转换图)
来源:http://www.blogjava.net/vip01/archive/2013/05/25/92430.html J2EE开发中大量的专业缩略语很是让人迷惑,尤其是跟一些高手讨论问题的时候 ...
- PO BO VO DTO POJO DAO概念及其作用(附转换图)
J2EE开发中大量的专业缩略语很是让人迷惑,尤其是跟一些高手讨论问题的时候,三分钟就被人家满口的专业术语喷晕了,PO VO BO DTO POJO DAO,一大堆的就来了(听过老罗对这种现象的批判的朋 ...
- PO BO VO DTO POJO DAO概念及其作用
J2EE开发中大量的专业缩略语很是让人迷惑,尤其是跟一些高手讨论问题的时候,三分钟就被人家满口的专业术语喷晕了,PO VO BO DTO POJO DAO,一大堆的就来了(听过老罗对这种现象的批判的朋 ...
随机推荐
- lumen Console Commands
1.在app->Console->Commands中新增类 继承 Illuminate\Console\Command <?php namespace App\Console\Co ...
- eclipse配置文件导出问题
关于eclipse配置文件导出问题 eclipse的默认配置一般不能满足我们的要求,我们一般会修改一些配置,如字体.背景颜色.快捷键及一些template等等,这样方便我们的开发.可是当我们新建一个工 ...
- PlateSpin 完全复制由于LVM没有可用空闲空间导致失败
使用PlateSpin复制居然会由于LVM的卷组VG没有空闲可用的空间(available free space in the LVM volume group)创建快照而导致失败,特此记录一下:免得 ...
- SQL Server(六)——索引、视图和SQL编程
1.索引 添加索引,设计界面,在任何一列前右键--索引/键--点击进入添加某一列为索引 2.视图 视图就是我们查询出来的虚拟表 创建视图:create view 视图名 as SQL查询语句,分组,排 ...
- Kafka 分布式的,基于发布/订阅的消息系统
Kafka是一种分布式的,基于发布/订阅的消息系统.主要设计目标如下: 通过O(1)的磁盘数据结构提供消息的持久化,这种结构对于即使数以TB的消息存储也能够保持长时间的稳定性能. 高吞吐量:即使是非常 ...
- 遍历map的常用方法
Map< String, String> map = new HashMap<String, String>(); map.put("a", " ...
- Sql Server 2008R2 遇到了BCP导入各种中文乱码的问题
今天玩BCP导入数据的时候,有文件格式,有中文字符串问题……以下是历程,和大家分享一下,希望不要走我的弯路 主要那个表是一个翻译表,一个文件里面内涵几十种语言,所以很容易发现问题. 0.使用最常用的语 ...
- SQL Server中字符串转化为GUID的标量函数实现
还是工作中遇到的需求,有时候和外部的系统对接,进行数据的核对功能,外部的系统有时候主键字段列数据类是UNIQUEIDENTIFER(GUID)类型的字符串格式,去除了GUID格式中的分隔符“- ...
- nginx有关.htaccess小结
可能很多朋友都常用nginx不支持.htaccess,只有apache才支持.htaccess文件,其实这是错误的看法nginx也是支持.hatccess的哦. 其实nginx和.htaccess一点 ...
- 三、Android学习第三天——Activity的布局初步介绍(转)
(转自:http://wenku.baidu.com/view/af39b3164431b90d6c85c72f.html) 三.Android学习第三天——Activity的布局初步介绍 今天总结下 ...