在Java中VO , PO , BO , QO, DAO ,POJO是什么意思
在Java中VO , PO , BO, DAO ,POJO是什么意思
最近在项目中,遇到VO,我的天。。。那就一起学习回忆一下
首先简单说明下:
O/R Mapping是Object Relational Mapping(对象关系映射)的缩写。简单来说,就是将对象和关系数据库绑定,用对象来表示关系数据。
Java WEB三层架构咱们更需要熟练使用
VO:值对象(Value Object)
用new关键字创建,有GC回收通常用于业务层之间的数据传递,一般是抽象出的业务对象,可以和数据表相对应,也可以不。在web层,对应一个web页面或者swt界面,用一个VO对象对应一个界面的值。
PO:持久对象(Persistant Object)
属性和数据库表中的字段一一对应,可以看成是数据库中的表相映射的java对象。由数据库insert产生,由数据库delete删除。其生命周期和数据库密切相关,但PO中不应该包含任何对数据库的操作。
其java文件一般都是数据库表中字段属性和对应的get,set方法
BO:业务对象(business object)
主要作用是把业务逻辑封装成一个对象。这个对象可以包括一个或多个其他的对象。比如一个简历,有教育经历,实习经历,得奖情况等等,建立一个对应简历的BO对象处理简历,每个BO包含这些PO,这样处理业务逻辑时,我们可以针对BO进行处理。
DTO:数据传输对象(Data Transfer Object)同时又DTO模式
主要用于远程调用等需要大量传输对象的地方。比如我们一张表有100个字段,那么对应的PO就有100哥属性。但是我们的界面上只要显示10个字段,客户端用WEB service来获取数据,没有必要把整个PO对象传递到客户端。这是我们就可以用只有这10个属性的DTO来传递结果到客户端,这样也不会暴露服务端表结构。到达客户端以后,如果用这个对象来对应界面显示,那么此时它的身份就转为VO
DAO:数据访问对象(Data Access Object)同时又DAO模式
主要用来封装对数据库的访问,包含了各种数据库的操作方法,提供数据库的CRUD操作。通过它可以把POJO持久化为PO,用PO组装为DTO、VO
POJO:简单Java对象(Plain Ordinary Java Object)
POJO是最常见最多变的对象,是一个中间对象,也是我们最常见的打交道的对象。
一个POJO持久化以后就是PO
直接用它传递,传递过程中就是DTO
直接用来对应标识层就是VO
画个图简单表示一下(借用别人的图)
地址:http://jeoff.blog.51cto.com/186264/88517/

在Java中VO , PO , BO , QO, DAO ,POJO是什么意思的更多相关文章
- Java中的各种bean对应的意义(VO,PO,BO,QO, DAO,POJO,DTO)
VO(value object) 值对象 通常用于业务层之间的数据传递,用 new 关键字创建,由 GC 回收的,和 PO 一样也是仅仅包含数据而已.但应是抽象出的业务对象 , 可以和表对应 , 也可 ...
- VO , PO , BO , QO, DAO ,POJO
VO , PO , BO , QO, DAO ,POJO, O/R Mapping 是 Object Relational Mapping (对象关系映射)的缩写.通俗点讲,就是将对象与关系数据库绑定 ...
- 转载--Java中的PO、DO、DTO、 VO的概念
Java中的PO.DO.DTO. VO的概念 写的很清晰,学习了.
- java中的PO,VO,TO,BO,DAO,POJO的解释
java的(PO,VO,TO,BO,DAO,POJO)解释 O/R Mapping 是 Object Relational Mapping(对象关系映射)的缩写.通俗点讲,就是将对象与关系数据库绑定 ...
- java术语(PO/POJO/VO/BO/QO/DAO/DTO)
一.概念理解 这些概念用于描述对象的类型:由于java是面向对象的语言:程序的世界就是各个对象之间的"交互":在交互的工程中会存在多个层次,每个层次中所拥有(关注)的内容都是不 ...
- Java 中 VO、PO、DTO、BO、POJO、DAO 之间的区别与解释
转载:https://www.cnblogs.com/hunmeng/p/11298680.html VO value object:值对象 通常用于业务层之间的数据传递,由new创建,由GC回收. ...
- Java 中的PO VO DTO BO
PO 持久对象,数据: BO 业务对象,封装对象.复杂对象 ,里面可能包含多个类:DTO 传输对象,前端调用时传输 :VO 表现对象,前端界面展示. 当你业务足够简单时,一个POJO 也完全当做PO ...
- Java中 VO、 PO、DO、DTO、 BO、 QO、DAO、POJO的概念
PO(persistant object) 持久对象 在 o/r 映射的时候出现的概念,如果没有 o/r 映射,没有这个概念存在了.通常对应数据模型 ( 数据库 ), 本身还有部分业务逻辑的处理.可以 ...
- Java中 VO、 PO、DO、DTO、 BO、 QO、DAO、POJO的概念(转)
PO(persistant object) 持久对象 在 o/r 映射的时候出现的概念,如果没有 o/r 映射,没有这个概念存在了.通常对应数据模型 ( 数据库 ), 本身还有部分业务逻辑的处理.可以 ...
随机推荐
- Promise 异步函数顺序执行
可以满足需求,且使用方法和Promise.all统一 var a = function() { return new Promise(function(resolve, reject) { setTi ...
- Codeforces 917B MADMAX (DP+博弈)
<题目链接> 题目大意:给定一个DAG图,其中图的边权是给定的字符所对应的ascii码,现在A先手,B后手,每次沿DAG图走一步,但是第i次走的边权一定要大于等于第i-1次走的边权(这里是 ...
- go语言实战教程之管理员查询功能、退出功能
前面第10节课内容中已经学习开发完成了管理员登陆功能.本节课我们将继续学习开发完成管理员信息查询功能.管理员退出功能 管理员信息查询功能 请求及路由映射 管理员信息查询接口 接口名称:获取管理员信息. ...
- thinkphp 连接数据库 & 实例化模型操作 (下接thinkphp CURD 操作)/慕课
7.1 连接数据库 (06:15) 1 7.2实例化模型 1 1.实例化基础模型 2 2. 实例化用户自定义模型 2 问题 2 3. 实例化公共模型 4 4. 实例化空模型 7 7.1 连接数据 ...
- C#中工厂模式的作用
1.比如,主要用于对扩展性有要求的功能. 以简单工厂为例: 接口Fun有三个实现 class FunA FunB FunC工厂 class Fac { public static Fun getF ...
- loj #2037. 「SHOI2015」脑洞治疗仪
#2037. 「SHOI2015」脑洞治疗仪 题目描述 曾经发明了自动刷题机的发明家 SHTSC 又公开了他的新发明:脑洞治疗仪——一种可以治疗他因为发明而日益增大的脑洞的神秘装置. 为了简单起见 ...
- 51nod1040最大公约数之和(欧拉函数)
题面 传送门 题解 这种题目就是推倒推倒 \[\sum_{i=1}^n \gcd(i,n)=\sum_{i|n}i\sum_{j=1}^n[\gcd(j,n)=i]\] \[\sum_{i=1}^n ...
- Build SSH for Development on Windows Subsystem for Linux
It seems that Windows Subsystem for Linux (WSL) is getting much more mature than the time when it fi ...
- kuangbin专题十六 KMP&&扩展KMP HDU2609 How many (最小字符串表示法)
Give you n ( n < 10000) necklaces ,the length of necklace will not large than 100,tell me How man ...
- springboot整合dubbo注解方式(四)
在笔者换jar包时候出现问题: Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/zook ...