文章目录

  • 1、VO(Value Object)值对象
  • 2、DTO(Data Transfer Object)数据传输对象
  • 3、DO(Domain Object)领域对象
  • 4、PO(Persistant Object)持久对象
  • 5、BO(Business Object)业务对象
  • 6、QO(Query Object)查询对象
  • 7、DAO(Data Access Object)数据访问层
  • 8、POJO(Plain Ordinary Java Object)简单无规则JAVA对象

1、VO(Value Object)值对象

通常用于业务层之间的数据传递(与DTO类似在Web上传递),用 new 关键字创建,由 GC 回收,和 PO 一样也是仅仅包含数据而已。但应是抽象出的业务对象 , 根据业务需要,它可以和表对应,也可以不对应 。

有时候也被称为View Object,用于传递给View层使用的数据对象。

2、DTO(Data Transfer Object)数据传输对象

主要用于远程调用等需要大量传输对象的地方。比如我们一张表有100个字段,那么对应的PO或者DO就有100个属性。但是我们界面上只要显示10个字段,客户端用WEB service来获取数据,没有必要把整个PO对象传递到客户端,这时我们就可以用只有这10个属性的DTO来传递结果到客户端,这样也不会暴露服务端表结构,到达客户端以后,如果把这个对象在对应界面显示,那此时它的身份就转为VO。

3、DO(Domain Object)领域对象

从现实世界中抽象出来的有形或无形的业务实体。一般和数据中的表结构对应(与PO有点类似)。

4、PO(Persistant Object)持久对象

PO是O/R映射中的概念,如果没有O/R映射就不存在这个概念。通常对应数据模型 ( 数据库 ), 本身还有部分业务逻辑的处理。可以看成是与数据库中的表相映射的 java 对象。最简单的 PO 就是对应数据库中某个表中的一条记录,多个记录可以用 PO 的集合。 PO 中应该不包含任何对数据库的操作。

5、BO(Business Object)业务对象

从业务模型的角度看 , 见 UML 元件领域模型中的领域对象。它是封装业务逻辑的 java 对象 , 通过调用 DAO 方法 , 结合 PO,VO 进行业务操作。 这个对象可以包括一个或多个其它的对象。 比如一个简历,有教育经历、工作经历、社会关系等等,然后可以把教育经历对应一个 PO ,工作经历对应一个 PO ,社会关系对应一个 PO ,最后建立一个对应简历的 BO 对象,每个 BO 包含这些 PO并用于处理简历。

6、QO(Query Object)查询对象

一般用于组装查询参数。

7、DAO(Data Access Object)数据访问层

它是一个标准JAVA EE设计模式中的一个接口(DAO),它负责持久层的操作,为业务层提供接口。它用于数据库访问,通常与PO结合使用,夹在业务逻辑和数据库资源中间,配置VO提供数据库的CURD操作。

8、POJO(Plain Ordinary Java Object)简单无规则JAVA对象

POJO是传统意义的 java 对象,它和PO、VO、DO等,应不是一个层级的分类,它是一个完全符合 Java Bean 规范的纯 Java 对象,没有增加别的属性和方法。当前理解最基本的 Java Bean ,只有属性字段及 setter 和 getter 方法,它没有业务逻辑。某些纯粹的PO、VO等都可以看做是POJO

PO、VO、DO、TO、DTO、 BO、 QO、DAO、POJO相关推荐

  1. java vo转map_三分钟掌握POJO及其转换——PO、DO、DTO、VO

    三分钟掌握POJO及其转换--PO.DO.DTO.VO​mp.weixin.qq.com 概念 DTO(Data Transfer Object) 数据传输对象,原先是为分布式提供粗粒度的数据实体,减 ...

  2. vo类,model类,dto类的作用及划分

    vo类,model类,dto类的作用及划分 1.entity里的每一个字段,与数据库相对应, 2.dto里的每一个字段,是和你前台页面相对应, 3.VO,这是用来转换从entity到dto,或者从dt ...

  3. bo dto java vo_java中PO、VO、BO、POJO、DAO、DTO、TO、QO、Bean、conn的理解

    O/R Mapping 是 Object Relational Mapping (对象关系映射)的缩写.通俗点讲,就是将对象与关系数据库绑定,用对象来表示关系数据.在 O/R Mapping 的世界里 ...

  4. 一款IDEA插件神器,帮你一键转换DTO、VO、BO、PO、DO

    今日推荐 推荐一个 Java 接口快速开发框架干掉Random:这个类已经成为获取随机数的王者Docker + Intellij IDEA,提升 10 倍生产力!笑出腹肌的注释,都是被代码耽误的诗人! ...

  5. PO、VO、DAO、BO、POJO

    一.PO :(persistant object ),持久对象 可以看成是与数据库中的表相映射的java对象.使用Hibernate来生成PO是不错的选择. 二.VO :(value object) ...

  6. Java中的几种对象(PO、VO、DAO、BO、POJO)

    1.VO PO O/R Mapping 是 Object Relational Mapping(对象关系映射)的缩写.通俗点讲,就是将对象与关系数据库绑定,用对象来表示关系数据.在O/R Mappin ...

  7. entity、bo、vo、po、dto、pojo如何理解及相互转化

    先介绍一下我们经常会用到的一些对象:entity.POJO.VO.DTO.BO和PO. 概念: Entity 最常用实体类,基本和数据表一一对应,一个实体一张表. Bo(business object ...

  8. po、bo、do、dto、vo相关图形

    图1.2:基于Springmvc.RPC的三层架构角度 图3.4:基于struts2的三层架构角度 图5:基于mybatis三层构架角度  图6:基于servlet的三层构架角度 图7:信产业务  图 ...

  9. 一张关系图助你清晰认识各种O。PO、BO、DTO、VO关系图,够直观

    记录一下今日成长,在开发一个新的模块的时候总结了前面的不足,决定从数据结构的设计开始严格要求自己,于是在做完数据库设计后去收集汇总了一下PO.BO.DTO.VO等之间的关系,准备在脑海中建立一份详细的 ...

  10. 领域模型 PO、VO、DAO、BO、DTO、POJO

    <阿里巴巴Java开发规范> 关于领域模型的部分介绍如下: 分层领域模型规约: DO(Data Object):此对象与数据库表结构一一对应,通过 DAO 层向上传输数据源对象. DTO( ...

最新文章

  1. 第四范式申请港交所上市:2021上半年营收7.88亿,研发费用占七成
  2. 浅谈对JavaScript闭包的理解
  3. HALCON示例程序stamp_catalogue.hdev分割图片与文字
  4. java执行sql列名无效_嵌套异常是java.sql.SQLException:无效的列名ORACLE
  5. BZOJ 2324: [ZJOI2011]营救皮卡丘(带上下限的最小费用最大流)
  6. Linux (x86) Exploit 开发系列教程之十二 释放后使用
  7. 《Python Cookbook(第3版)中文版》——1.5 实现优先级队列
  8. layui select框动态展示option与拿值
  9. raft协议 java_图解分布式协议-RAFT
  10. C语言 NUL、NULL及eof
  11. mysql5.5.50安装包_影视混剪每天收入400多??总结了50多款软件
  12. 【Oracle11gR2 | 学习】plsql dev存储过程的使用、存储函数、out类型的使用
  13. PyQt4安装使用以及pycharm环境配置
  14. EXIF 方向参数 Orientation
  15. 给UI/UX设计师推荐5个国外网站
  16. LibreOffice 6.2.2 Office办公套件发布
  17. Android studio无法连接识别检测各种模拟器和手机的问题
  18. oeasy教您玩转linux010206toilet
  19. python 字体颜色改变
  20. 如何使用python视频_如何使用python网络爬虫抓取视频?

热门文章

  1. C#:List泛型集合
  2. 健身预约小程序的设计与实现
  3. 微服初识/优缺点2020-09-03
  4. 有什么变音视频软件?这些软件值得收藏
  5. Https证书的安装
  6. 童年记忆中的优良环境
  7. 如何用好消息推送为app拉新、留存、促活
  8. [生存志] 第59节 仲尼弟子座次
  9. python可视化是什么意思_python3数据可视化是什么?
  10. iOS 屏幕尺寸、分辨率、适配