分层领域模型规约:
  • DO(Data Object):此结构与数据库表结构一一对应,通过DTO向上传输数据源对象。
  • DTO(Data Transfer Object):数据传输对象,Service 或 Manager 向外传输的对象。
  • BO(Business Object):业务对象,由Service 层输出的封装业务逻辑的对象。
  • AO(Application Object):应用对象,在Web 和 Service 层之间抽象的复用对象模型。
  • VO(Value Object):显示层对象,通常是Web向模板渲染引擎层传输的对象。
领域模型命名规范:
  • 数据对象:xxxDO,xxx即为数据表名;
  • 数据传输对象:xxxDTO,xxx为业务领域相关的名称;
  • 展示对象:xxxVo,xxx为网页名称;
  • POJO是DO/DTO/BO/VO的统称,禁止命名成xxxPOJO。
 
  • PO(Persistant Object),持久对象
  可以看成是与数据库中的表相映射的java对象。使用Hibernate生成PO是不错的选择。
  • VO(Value Object),值对象
  通常用于业务层之间的数据传递,和PO一样也仅仅包数据而已。但应该是抽象出的业务对象,不要求必须和表对应,根据业务需要。PO只能在数据层,VO用在商业逻辑层和表示层。
  • DTO(Data Transfer Object),数据访问对象接口
  与数据库打交道,夹在业务逻辑与数据库资源中间。
  • BO(Business Object),业务对象层
  表示应用程序领域内"事物"的所有实体内。这些实体类驻留在服务器上,并利用服务类来协助完成他们的职责。
  • DTO(Data Transfer Object),数据传输对象
  只要用于远程调用等需要大量传输对象的地方。例如某张表有100个字段,那么对应的PO就有100个属性。但业务需求是在
界面上显示其中10个字段即可,客户端采用Web Service来获取数据,就没有必要把整个PO对象传递到客户端,这时就可以把需要的10个字段通过DTO传递到客户端。如果用这个对象来对应界面显示,就可以转换为VO。
  • POJO(Plain Old Java Objects),简单的Java对象
  实际就是普通的JavaBeans,使用POJO是为了避免与EJB混淆。
 

区分PO、VO、 BO、 DTO、 POJO的更多相关文章

  1. PO VO BO DTO POJO DAO(转)

    2EE开发中大量的专业缩略语很是让人迷惑, 特别是对于刚毕业的新人来说更是摸不清头脑.若与公司大牛谈技术人家出口就是PO VO BO DTO POJO DAO 等,让新人们无比仰慕大牛. PO(bea ...

  2. JavaEE PO VO BO DTO POJO DAO 整理总结

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

  3. PO VO BO DTO POJO DAO之间的关系

    J2EE开发中大量的专业缩略语很是让人迷惑,尤其是跟一些高手讨论问题的时候,三分钟就被人家满口的专业术语喷晕了,PO VO BO DTO POJO DAO,一大堆的就来了. PO:persistant ...

  4. PO,VO,BO,DTO,POJO(POCO),DAO的区别(转载)

    PO:persistant object持久对象 最形象的理解就是一个PO就是数据库中的一条记录.好处是可以把一条记录作为一个对象处理,可以方便的转为其它对象. BO:business object业 ...

  5. Java中DAO/DTO/PO/VO/BO/QO/POJO

    ORM:是Object Relational Mapping(对象关系映射)的缩写. 通俗点讲,就是将对象与关系数据库绑定,用对象来表示关系数据.在O/R/M的世界里,有两个基本的也是重要的东东需要了 ...

  6. Java开发各层对象专用名词含义 PO,VO,DAO,BO,DTO,POJO, BYO,Entity,JavaBean,JavaBeans

    Java的几种名词(PO,VO,DAO,BO,POJO)解释 PO:persistant object 持久对象.可以看成是与数据库中的表相映射的java对象.最简单的PO就是对应数据库中某个表中的一 ...

  7. PO,VO,BO,POJO,DAO的区别

    基本概念 PO:persistant object (持久化对象),可以看成是与数据库中的表相映射的java对象.最简单的PO就是对应数据库中某个表中的一条记录,多个记录可以用PO的集合.PO中应该不 ...

  8. PO VO DAO DTO BO TO概念与区别(转)

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

  9. PO VO DAO DTO BO TO概念与区别

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

  10. PO/VO/BO等对象模型

    PO :persistent object持久对象 1 .有时也被称为Data对象,对应数据库中的entity,可以简单认为一个PO对应数据库中的一条记录. 2 .在hibernate持久化框架中与i ...

随机推荐

  1. 干货必收藏!墨天轮最受DBA欢迎的250份学习文档合集

    作为一个DBA,必须要精通SQL命令.各种数据库架构.数据库管理和维护.数据库调优,必要的时候,还需要为开发人员搭建一个健壮.结构良好.性能稳定的数据库环境. 技术也是不断进步的,社会的发展要求DBA ...

  2. 使用 reduce 统计字符串每个字母出现的次数

    // 统计字符串每个字母出现的次数 let str = 'asdfssaaasasasasaa' let obj = str.split('').reduce(function (prev, item ...

  3. LEAP: Learning to Prescribe Effective and Safe Treatment Combinations for Multimorbidity

    LEAP: Learning to Prescribe Effective and Safe Treatment Combinations for Multimorbidity Authors: Yu ...

  4. 神经网络之卷积篇:详解残差网络(ResNets)(Residual Networks (ResNets))

    详解残差网络 ResNets是由残差块(Residual block)构建的,首先解释一下什么是残差块. 这是一个两层神经网络,在\(L\)层进行激活,得到\(a^{\left\lbrack l + ...

  5. 『玩转Streamlit』--环境配置

    尽管Streamlit的使用非常直观,但正确的环境配置对于充分发挥其潜力仍然至关重要. 本篇将介绍如何从头开始配置Streamlit环境,以及Streamlit开发过程中常用的几个命令. 最后通过一个 ...

  6. 用故事说透HTTPS

    本文来自素燕公众号,原文地址:用故事说透https 故事中的主演: 小华今年上大一,这是她第一次离开父母,独自一人到北京上学.今天妈妈的生日,想了想要给妈妈一个祝福,便给妈妈发了条消息: 妈妈收到这条 ...

  7. nginx配置tomcat的反向代理记录

    tomcat环境安装 (1)在 liunx 系统安装 tomcat,使用默认端口 8080 * tomcat 安装文件放到 liunx 系统中,解压, tar -xzvf tomcat.xxx * 进 ...

  8. HTML字体分类

    网页中的将字体分为5大类 1.serif:衬线字体 2.sans-serif:非衬线字体 3.monospace:等宽字体 4.cursive:草书字体 5.fantasy:幻虚字体 <p st ...

  9. 史上最全ThreadLocal 详解

    概述 线程本地变量.当使用 ThreadLocal 维护变量时, ThreadLocal 为每个使用该变量的线程提供独立的变量副本,所以每一个线程都可以独立地改变自己的副本,而不会影响其它线程. 每个 ...

  10. 《Selenium自动化测试实战:基于Python》之 基于Docker与Selenium Grid的测试技术

    基于Docker与Selenium Grid的测试技术                         10.1  Selenium Grid简介 尽管即将推出的Selenium 4.0对Seleni ...