zoukankan      html  css  js  c++  java
  • PO BO VO DTO POJO DAO 概念及其作用

    VO(View Object):视图对象,用于展示层,它的作用是把某个指定页面(或组件)的所有数据封装起来

    DTO(Data Transfer Object):数据传输对象,这个概念来源于J2EE的设计模式,原来的目的是为了EJB的分布式应用提供粗粒度的数据实体,以减少分布式调用的次数,从而提高分布式调用的性能和降低网络负载,但在这里,泛指用于展示层与服务层之间的数据传输对象
    DO(Domain Object):领域对象,就是从现实世界中抽象出来的有形或无形的业务实体。
    PO(Persistent Object):持久化对象,它跟持久层(通常是关系型数据库)的数据结构形成一一对应的映射关系,如果持久层是关系型数据库,那么,数据表中的每个字段(或若干个)就对应PO的一个(或若干个)属性

    PO(bean,entity等命名)
    persistant object持久对象,数据库表中的记录在java对象中的显示状态
    最形象的理解就是一个PO就是数据库中的一条记录。
    好处是可以把一条记录作为一个对象处理,可以方便的转为其它对象。

    BO(service,manager,business等命名):

    business object业务对象
    主要作用是把业务逻辑封装为一个对象。这个对象可以包括一个或多个其它的对象。
    形象描述为一个对象的形为和动作,当然也有涉及到基它对象的一些形为和动作。比如处理

    一个人的业务逻辑,有睡觉,吃饭,工作,上班等等形为还有可能和别人发关系的形为。
    这样处理业务逻辑时,我们就可以针对BO去处理。

    VO(from也有此写法) :
    value object值对象
    主要体现在视图的对象,对于一个WEB页面将整个页面的属性封装成一个对象。然后用一个VO对象在控制层与视图层进行传输交换。

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

    参考  :https://blog.csdn.net/zjrbiancheng/article/details/6253232

  • 相关阅读:
    mysql开发
    mysql的初始化配置及命令行选项
    纪念Vamai
    JXU1NDRBJXU0RTJBJXU1MjJCJXU1NDI3
    Java8简明学习之新时间日期API
    Java8简明学习之Lambda表达式
    Java8简明学习之接口默认方法
    Java8简明学习之Optional
    JVM类加载器及Java类的生命周期
    Java反射拾遗
  • 原文地址:https://www.cnblogs.com/zouhong/p/12013904.html
Copyright © 2011-2022 走看看