zoukankan      html  css  js  c++  java
  • 什么是PO,VO,DTO,DAO,POJO

    1.PO

    PO(persisent object),即持久对象,在一些Object/Relation Mapping工具中,能够做到维护数据库表记录的persisent object完全是一个符合Java Bean规范的纯Java对象,没有增加别的属性和方法。主要是对应数据库中的字段,可以简单认为一个PO对应数据库中的一张表,其中po对象的属性对应数据库中的字段。持久对象由insert数据库创建,由delete数据库删除。PO中不应该包含任何对数据库的操作。

    2.POJO

    POJO(plain ordinary java object,也有叫pure old Java object )无规则简单java对象,实际就是普通JavaBeans,使用POJO名称是为了避免和EJB混淆起来, 而且简称比较直接. 其中有一些属性及其getter setter方法的类,有时可以作为value object或dto(Data Transform Object)来使用。但是如果涉及到比较复杂的逻辑的话,就需要重新构造新的接收对象。

    POJO是由new创建,由GC回收。

    3.VO

    value object值对象 ,他可以和表对应,也可以不用,取决于业务的需要和复杂程度。通常用于业务层之间数据的传递,也是用于包含数据。

    view object表现层对象,主要对应页面显示的数据对象,用VO来封装页面需要展示的数据对象。

    4.DTO

    DTO:数据传输对象,顾名思义,主要是为了传输数据,所以构造的一个对象。它的构造是基于数据库中的表的,比如某个数据库表有20个字段,但是表现层只需要其中的5个字段,那么这个时候就没有必要以整个数据库对应的POJO对象作为接收数据对象了,我们可以构造一个DTO传递数据到客户端,到达客户端以后,如果用这个对象来对应界面显示,那此时它的身份就转为VO。

    5.DAO

    DAO:data access object数据访问对象,即我们常说的操作数据库的对象。主要用来封装对DB的访问(CRUD操作),并通过接收Business层的数据,把POJO持久化为PO,用PO组装出VO,DTO。

     

     

  • 相关阅读:
    首次搭建微信小程序记录各种细节
    vue3.x 首次搭建
    通过nodejs 下载阿里云省、市、区的json文件,使用在echart上
    vscode
    使用 ts + and design + react-redux + react-router-dom + ahook 开发 管理后台
    Python 字典(dict) 操作基础
    高斯混合模型视频背景建模的EM算法与Matlab 实现
    Tensorflow 10分钟快速上手
    Ubuntu16.04LTS 搜狗输入法无法输入中文
    Machine Learning Class 1:Introduction,supervised & unsupervised learning
  • 原文地址:https://www.cnblogs.com/baichendongyang/p/13235529.html
Copyright © 2011-2022 走看看