乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      java項目中VO和DTO以及Entity,各自是在什么情況下應用的

       liang1234_ 2019-12-13
      j2ee中,經(jīng)常提到幾種對象(object),理解他們的含義有助于我們更好的理解面向對象的設計思維。
          POJO(plain old java object):普通的java對象,有別于特殊的java對象(含繼承約束等)和EJB。POJO一般只有一系列的屬性和相應的get、set方法。
          PO(persistant object):持久化對象,有別于POJO,必須對應數(shù)據(jù)庫中的實體。一個PO對應數(shù)據(jù)庫的一條記錄。持久化對象的生命周期與數(shù)據(jù)庫密切相關,只能存在于connection之中,連接關閉后,PO就消失了。
          PO相對于POJO有諸多不同,比如PO中會有保存數(shù)據(jù)庫entity狀態(tài)的屬性和方法。但是ORM(object-relation mapping)追求的目標是PO和POJO的一致,所以在程序員的日常開發(fā)中,都是將POJO作為PO使用,而將POJO轉化為PO的功能交給hibernate等框架來實現(xiàn)。
          DTO(data transfer object):數(shù)據(jù)傳輸對象,以前被稱為值對象(VO,value object),作用僅在于在應用程序的各個子系統(tǒng)間傳輸數(shù)據(jù),在表現(xiàn)層展示。與POJO對應一個數(shù)據(jù)庫實體不同,DTO并不對應一個實體,可能僅存儲實體的部分屬性或加入符合傳輸需求的其他的屬性。
          DAO(data access object):數(shù)據(jù)訪問對象。提供訪問數(shù)據(jù)庫的抽象接口,或者持久化機制,而不暴露數(shù)據(jù)庫的內部詳細信息。DAO提供從程序調用到持久層的匹配。
          BO(business object):業(yè)務對象。主要是將業(yè)務邏輯封裝為一個對象,該對象可以包含一個或多個其他對象。如,'Principal'(委托人),有'Name','Age'等屬性,同時和'Employee'(雇員)有1對多的關系,這個'Principal'就可以作為一個與業(yè)務相關的PO。

      實踐小結

      按照標準來說:
      1、entity里的每一個字段,與數(shù)據(jù)庫相對應,
      2、VO里的每一個字段,是和你前臺頁面相對應,
      3、DTO,這是用來轉換從entity到dto,或者從dto到entity的中間的東西。
      舉個例子:

      你的html頁面上有三個字段,name,pass,age
      你的數(shù)據(jù)庫表里,有兩個字段,name,pass(注意沒有age哦)而你的dto里,就應該有下面三個(因為對應html頁面上三個字段嘛)
      private string name;
      private string pass;
      private string age;
      這個時候,你的entity里,就應該有兩個(因為對應數(shù)據(jù)庫表中的2個字段嘛)
      private string name;
      private string pass;
      到了這里,好了,業(yè)務經(jīng)理讓你做這樣一個業(yè)務“年齡大于20的才能存入數(shù)據(jù)庫”

      這個時候,你就要用到vo了

      你要先從頁面上拿到VO,然后判斷dto中的age是不是大于20,如果大于20,就把dto中的

      name和pass拿出來,放到vo中,然后在把DTO中的name和pass原封不懂的給entity,然后根據(jù)

      entity的值,在傳入數(shù)據(jù)庫,這就是他們三個的區(qū)別
      PS,DTO和entity里面的字段應該是一樣的,DTO只是entity到VO,或者VO到entity的中間過程,如果沒有這個過程,你仍然可以做到增刪改查。

        本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內容,請點擊一鍵舉報。
        轉藏 分享 獻花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多