zoukankan      html  css  js  c++  java
  • java的VO和PO的用途

    最近在搞一个项目,用到了 springMVC,加深了我对VO和PO的理解,有感而发。

    1 写在之前的提示

    VO == Value Object

    PO == Persistant Object

    VO对应页面,PO对应实体/关系型映射

    2 在你的程序中,如果没有VO,那么说明你的程序很可能不是以面向对象的思想来设计的,或者说你把PO同时当成了VO使。

    实体:

         Order {

         id

         createDate

      }

    当我页面上需要对订单进行创建时间过滤时,有两种方式,一种方式是非面向对象的设计,另一种是在PO中加入 createDateStart、createDateClose,即

      Order {

         id

         createDate

         createDateStart

         createDateClose

      }

    这个时候就是Order 即使PO也是VO

    为什么不用更优雅的设计

      OrderValueObject {

         id

         createDateStart

         createDateClose

      }

      

      OrderPersistenceObject {

         id

         createDate

      }

    不是更清晰、更优雅吗?什么?代码量很高?哦,朋友,你不知道有代码生成器这回事儿吗?

  • 相关阅读:
    P1113 杂务 题解
    P3916 图的遍历 题解
    P5318 【深基18.例3】查找文献 题解
    P2814 家谱 题解
    P3879 [TJOI2010]阅读理解 题解
    P4305 不重复的数字题解
    P1955 [NOI2015] 程序自动分析题解
    P1892 [BOI2003]团伙
    P1525 [NOIP2010 提高组] 关押罪犯
    【610】keras 相关问题说明
  • 原文地址:https://www.cnblogs.com/MorZe/p/4504595.html
Copyright © 2011-2022 走看看