• java-基础-【四】实际编程中的对象


    一、概述

      实际编程开发中,仅仅一个数据库对象映射是满足不了各种复杂需求。

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

    二、对比

    以下指示大家通俗意义上的常用定义,一般以此为后缀【PO不用加】

    当然也可以定义自己的各种O对象,方便开发的简便与理解,比如个人常用的接收前端参数的RO【Request Object】、QO【query object】等

    名称 全名 基本含义 备注
    PO

    persistant object

    持久对象

    它们是由一组属性和属性的get和set方法组成

    可以看成是与数据库中的表相映射的java对象

    PO的属性是跟数据库表的字段一一对应的

    不建议增加任何逻辑

    可能是所有其他O的基类或属性

    VO【1】

    value object

    值对象

    业务对象,是存活在业务层的,是业务逻辑使用的,

    它存活的目的就是为数据提供一个生存的地方

     
    VO【2】

    View Object

    表现层对象

    主要对应界面显示的数据对象。对于一个WEB页面,

    或者SWT、SWING的一个界面,用一个VO对象对应整个界面的值。

     
    BO

    business object

    业务对象 

    从业务模型的角度看,见UML元件领域模型中的领域对象。

    封装业务逻辑的java对象,通过调用DAO方法,结合PO,VO进行业务操作。

     
    POJO

    plain ordinary java object

    简单无规则java对象

    POJO是最常见最多变的对象,是一个中间对象

     
    DTO 

    Data Transfer Object

    数据传输对象

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

    到达客户端以后,如果用这个对象来对应界面显示,那此时它的身份就转为VO

     
    DAO

    data access object

    数据访问对象

    和以上完全不是一个概念

    主要用来封装对数据库的访问。通过它可以把POJO持久化为PO,用PO组装出来VO、DTO

     
  • 相关阅读:
    BOM:浏览器对象模型
    webStorm 用git上传代码(github)
    flex弹性布局
    面试题(一)
    HTTP协议···(一)
    构造函数
    断点调试
    FCC 高级算法题 库存更新
    FCC 高级算法题 收银机找零钱
    FCC 高级算法题 对称差分
  • 原文地址:https://www.cnblogs.com/bjlhx/p/6784859.html
Copyright © 2020-2023  润新知