<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-3  評論-2  文章-1  trackbacks-0
             POJO(plain old java Object)[譯:簡單初始Java對象]。它簡單(因為只有set/get方法)嗎?或是我們把應該把它弄得復雜點(帶點業務判斷)?究竟它在我們J2EE應用中扮演一個什么樣的角色呢?一個Anemic Domain Model,Rich Domain Model, DTO, O/R mapping Entity........!以前我的系統中POJO都是一個貧血的模型,只有set/get方法!它的職責就是把前端頁面的數據從formBean中轉移過來(用反射),作為持久層的對象。這里POJO有兩個角色,一個角色是傳送數據,另一個是角色是PO(持久對象)。一段時間后我發現這樣做效率低下,想像一下有些業務處理,如一個銀行帳戶的pojo,里面有一個金額和利息字段,這個金額是通過一些公式計算后得出來的,開始時我們在業務層里把金額算出來后set到帳戶pojo金額字段里。我開始思索把一些都是計算或者純邏輯的東西pull Up到pojo中。這時候我的pojo變成一個Domain Object。盡管不是一個Rich的Domain Model,但畢竟前進了一小步。再后來用到了webwork2,由于webwork2里沒有了struts formBean,使用攔截機設值,ModelDriven模式下我的持久Entity就是一個formBean和po的結合, 在ACTIO中它是一個有值的VO,在DAO實現層變成一個PO。在這里我的pojo繼承了O/R Entity類,并把合適的業務層的代碼都移到相應的了Pojo中,當然沒有持久層的代碼。這樣我的系統的部分pojo變成了Rich Domain Model。在Ejb下,由會話門面管理對POJO業務對象訪問對比起笨重的entity bean有更高的效率和可移植性。盡管Ejb下的POJO不能享受entity bean的CMP策略,但有了spring 的IOC后,一切變得可配置了!POJO還有很重要的一個優勢就是pojo中的業務可以脫離具體容器運行測試!在這里,pojo是貧血還是沖血應該取決于你的業務應用,記住:不要把簡單的問題搞復雜了,但把復雜的問題分解成簡單的問題一直就是我們追求的!
    posted on 2005-11-24 16:46 java驛館 閱讀(612) 評論(1)  編輯  收藏 所屬分類: J2EE隨談

    評論:
    # re: J2EE中POJO的定位 2008-06-25 09:18 | luren
    了解~~~  回復  更多評論
      
    主站蜘蛛池模板: 成人爱做日本视频免费| 久久永久免费人妻精品下载| 最近免费中文字幕高清大全| 丰满妇女做a级毛片免费观看| 免费无码肉片在线观看| 亚洲91精品麻豆国产系列在线| 国产精品亚洲专区在线播放| 成在线人免费无码高潮喷水| ZZIJZZIJ亚洲日本少妇JIZJIZ| 亚洲精品美女在线观看| 免费人成视频在线观看免费| 亚洲网站免费观看| 亚洲第一永久AV网站久久精品男人的天堂AV | 国产精品亚洲一区二区三区在线观看 | 久久综合国产乱子伦精品免费| 久久亚洲AV无码精品色午夜| h在线观看视频免费网站| 激情综合色五月丁香六月亚洲| 亚洲成a人不卡在线观看| 精品国产免费人成网站| 欧美a级在线现免费观看| 亚洲女女女同性video| 亚洲 另类 无码 在线| 久久亚洲精品国产精品婷婷| 在线免费观看一级毛片| 又硬又粗又长又爽免费看| 亚洲中文字幕无码中文字在线| 性无码免费一区二区三区在线| 亚洲成a人在线看天堂无码| a级毛片毛片免费观看久潮 | 亚洲综合色区在线观看| a级成人毛片免费图片| 亚洲精品在线网站| 国产伦精品一区二区三区免费下载| 一级视频免费观看| 亚洲免费精彩视频在线观看| eeuss影院免费直达入口| 久久亚洲精品人成综合网| 在线播放高清国语自产拍免费| 久久国产免费直播| 亚洲三级在线观看|