Java中 VO、 PO、DO、DTO、 BO、 QO、DAO、POJO的区别
PO(persistant object) 持久对象
在 o/r 映射的时候出现的概念,如果没有 o/r 映射,没有这个概念存在了。通常对应数据模型 ( 数据库 ), 本身还有部分业务逻辑的处理。可以看成是与数据库中的表相映射的 java 对象。最简单的 PO 就是对应数据库中某个表中的一条记录,多个记录可以用 PO 的集合。 PO 中应该不包含任何对数据库的操作。
DO(Domain Object)领域对象
就是从现实世界中抽象出来的有形或无形的业务实体。一般和数据中的表结构对应。
TO(Transfer Object) ,数据传输对象
在应用程序不同 tie( 关系 ) 之间传输的对象
DTO(Data Transfer Object)数据传输对象
这个概念来源于J2EE的设计模式,原来的目的是为了EJB的分布式应用提供粗粒度的数据实体,以减少分布式调用的次数,从而提高分布式调用的性能和降低网络负载,但在这里,我泛指用于展示层与服务层之间的数据传输对象。
VO(view object) 值对象
视图对象,用于展示层,它的作用是把某个指定页面(或组件)的所有数据封装起来。
BO(business object) 业务对象
从业务模型的角度看 , 见 UML 元件领域模型中的领域对象。封装业务逻辑的 java 对象 , 通过调用 DAO 方法 , 结合 PO,VO 进行业务操作。 business object: 业务对象 主要作用是把业务逻辑封装为一个对象。这个对象可以包括一个或多个其它的对象。 比如一个简历,有教育经历、工作经历、社会关系等等。 我们可以把教育经历对应一个 PO ,工作经历对应一个 PO ,社会关系对应一个 PO 。 建立一个对应简历的 BO 对象处理简历,每个 BO 包含这些 PO 。 这样处理业务逻辑时,我们就可以针对 BO 去处理。
POJO(plain ordinary java object) 简单无规则 java 对象
纯的传统意义的 java 对象。就是说在一些 Object/Relation Mapping 工具中,能够做到维护数据库表记录的 persisent object 完全是一个符合 Java Bean 规范的纯 Java 对象,没有增加别的属性和方法。我的理解就是最基本的 Java Bean ,只有属性字段及 setter 和 getter 方法!。
DAO(data access object) 数据访问对象
是一个 sun 的一个标准 j2ee 设计模式, 这个模式中有个接口就是 DAO ,它负持久层的操作。为业务层提供接口。此对象用于访问数据库。通常和 PO 结合使用, DAO 中包含了各种数据库的操作方法。通过它的方法 , 结合 PO 对数据库进行相关的操作。夹在业务逻辑与数据库资源中间。配合 VO, 提供数据库的 CRUD 操作
Java中 VO、 PO、DO、DTO、 BO、 QO、DAO、POJO的区别相关推荐
- Java 中 VO、 PO、DO、DTO、 BO、 QO、DAO、POJO 的概念
Java 中 VO. PO.DO.DTO. BO. QO.DAO.POJO 的概念 BO(Business Object)业务对象 主要作用是把业务逻辑封装为一个对象,这个对象可以包括一个或多个其他的 ...
- 在Java中VO , PO , BO , QO, DAO ,POJO是什么意思
在Java中VO , PO , BO, DAO ,POJO是什么意思 最近在项目中,遇到VO,我的天...那就一起学习回忆一下 首先简单说明下: O/R Mapping是Object Relatio ...
- po是什么意思java_在Java中VO , PO , BO , QO, DAO ,POJO是什么意思
在Java中VO , PO , BO, DAO ,POJO是什么意思 最近在项目中,遇到VO,我的天...那就一起学习回忆一下 首先简单说明下: O/R Mapping是Object Relatio ...
- VO,PO,BO,QO, DAO ,POJO,的概念
原文链接:http://www.blogjava.net/luofeng225/archive/2009/03/28/262620.html 原文作者令我非常感动的一个故事: <我曾经听到这么一 ...
- java中的后台线程、前台线程、守护线程区别
java中的后台线程.前台线程.守护线程区别 区别和联系 区别 联系 区别和联系 区别 后台线程和守护线程是一样的. 后台线程不会阻止进程的终止,而前台线程会, 可以在任何时候将前台线程修改为后台线程 ...
- java如何用反射把具体方法抽象_如何在Java 中使用泛型或反射机制对DAO进行抽象...
如何在Java 中使用泛型或反射机制对DAO进行抽象 发布时间:2020-11-26 16:07:42 来源:亿速云 阅读:80 作者:Leah 本篇文章为大家展示了如何在Java 中使用泛型或反射机 ...
- 浅谈 JAVA中静态初始化块和非静态初始化块的区别
众所周知在JAVA编程语言中有两种初始化块: 静态初始化块 非静态初始化块 他们到底有什么区别呢?今天就浅谈一下JAVA中静态初始化块和非静态初始化块的区别 静态初始化块 定义: static{} 执 ...
- Java学习笔记1:Java中有关print、println、printf的用法和区别
Java学习笔记1:Java中有关print.println.printf的用法和区别 最近在学习java,写一些笔记记录下. 1.print()函数是一般的标准输出,但是不换行. 2.println ...
- java 中vo、po、dto、bo、pojo、entity、mode如何区分
PO persistant object:持久层对象 (只负责从数据库中获取数据,一个P0对应一个表) 是ORM(Objevt Relational Mapping)框架中Entity,PO属性和数据 ...
- Java 中的 PO、VO、DTO、BO、POJO、BO/DO、DAO
一.简单 Java 对象 1️⃣PO persistent object 持久对象.与数据库里表字段一一对应.PO是一些属性,以及set和get方法组成.一般情况下,一个表对应一个PO,直接与操作数据 ...
最新文章
- 三维点云语义分割总览
- HashedWheelTimer时间轮定时任务原理分析
- c/c++比较灵活的方法:回调函数和函数指针
- 空格的ascii码_美国信息交换标准代码ASCII
- linux下为.net core应用创建守护进程
- python消息队列celery_python—Celery异步分布式
- 网络编程之 socket编程
- mysql 重启爆红,MySQL 启动报错
- artsy 爬虫_让我们得到Artsy! 使用神经网络创建自定义Snapchat过滤器!
- 简单易学!一步步带你理解机器学习算法——马尔可夫链蒙特卡罗(MCMC)
- linux英文转换成中文
- 【人脸58点关键点】基于面积对比法的脑卒中识别算法
- quarters自动编译生成sof
- 高效实现统计分析(按日,月,周)查询功能
- 英语语法笔记——并列句(二)
- 微信支付找不到sdk
- Arduino与Proteus仿真实例-NTC热敏电阻驱动仿真
- 把一条长为1的线段任意分成三段,则这三段能构成三角形的概率为??
- 给力星-厦门大学数据库实验室
- IdentityServer4 DiscoveryClient找不到
热门文章
- thinkpad x250装黑苹果教程_ThinkPad E450c 傻瓜式黑苹果一键安装教程
- 用Vue.js开发企业管理后台,我做到了
- 计算机领域SI单位,it领域什么是si
- codeMirror使用记录
- 游戏盾能防住几T的攻击吗
- 【金猿人物展】袋鼠云易知微宁海元:从平台到场景,数字化进入全产业发展新阶段价值...
- 技术人员帮助电商运营选择最合适的物流快递运输公司的5个切入点
- vlookup多项匹配_Excel 怎样用VLOOKUP匹配多列数据/excle全部筛选匹配
- Android HIDL 介绍学习之客户端调用
- Android手机模拟器旋转快捷键