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

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

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

    如鵬網 大學生計算機學習社區

    CowNew開源團隊

    http://www.cownew.com 郵件請聯系 about521 at 163.com

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      363 隨筆 :: 2 文章 :: 808 評論 :: 0 Trackbacks

    Session Fa?ade 模式

    ? J2EE 項目中 DTO 模式常常是與 Session Fa?ade 模式協作使用的。為了執行一個業務邏輯,經常需要訪問多個服務器端對象(典型的是實體 Bean )。這樣出現的問題就是多個細粒度的對會話 Bean 和實體 Bean 的調用增加了多個網絡調用的開銷,而且還有一個問題就是業務邏輯被“下放”的客戶端,系統的可維護性降低。

    比如我們要修改一個托運協議單,我們首先要找到這個托運協議單,然后對其進行修改,(其中還要請求托運協議單明細,并對托運協議單明細進行修改),然后把修改后的結果發送到服務器。如下圖所示:


    ???
    在一次業務中客戶端要與服務器進行四次網絡調用。而且實體 Bean 都是具有事務性的,所以每個調用都會在服務器端產生一個獨立的事務。而且更加糟糕的是,由于每個對 EntityBean 的調用都是一個獨立的事務,那么如果在 updateConsignBillMaster 之后, updateConsignBillDetail 的時候發生了錯誤,那么就會造成數據的不一致,違反了事務的原子性。

    可見這種方式有如下的缺點:

    高昂的網絡調用開銷

    耦合性太高。客戶端是根據服務器端的EntityBean的結構寫的,如果服務器端發生了改變的話,也必須同時修改客戶端。

    復用性不好。修改托運協議單的業務邏輯被寫到了客戶端,如果以后我們要將UI由jsp網頁改成applets、或通過Power Builder等開發工具開發前臺界面等的時候,這些業務邏輯代碼就必須再此重寫。

    開發人員無法合理分工。在大型項目中,一般都是將表示層(jsp/servlet)、業務層(Session Bean)和持久層(Entity Bean)等由不同的程序員來完成。如果采用我們上邊提到的方法的話,表示層開發人員也必須同時理解業務層和持久層的實現方式,這樣加大了開發的復雜度和比較高的出錯率。

    無法保證業務的事務性。

    我們采用Session Fa ? ade模式解決這個問題:我們將實體Bean包裝在會話Bean中,客戶端只能訪問會話Bean和不能直接訪問實體Bean。

    采用這種模式后,客戶端和服務器的交互將會是這樣的:


    Session Fa
    ? ade模式對客戶端完全隱藏了存在于服務器端的對象模型,這樣也就減少了系統的復雜性,方便開發人員分工,前臺表示層開發人員只要調用Session Bean暴露的接口即可,如果業務層發生了變化,只要暴露的接口不變,那么表示層代碼就不用做任何改變。而且最重要的是:強制一個業務邏輯在一個網絡調用中執行,并且使得所有對Entity Bean的訪問都放在同一個事務中,這樣就保證了方法調用的事務完整性。

    給大家推薦一篇文章
    "寂寞鴕鳥"的網上成功之道
    http://www.cownew.com/showart.asp?id=54
    posted on 2006-03-29 00:55 CowNew開源團隊 閱讀(1279) 評論(1)  編輯  收藏

    評論

    # re: Session Façade模式 2006-04-11 12:42 Java & Delphi 聯合王國
    把TranslateMethod改成用Map+接口實現,每個函數的解析器都從一個函數解析接口繼承,以函數名為key,以接口為value,提高效率。
    http://blog.csdn.net/AlexAngel/category/156672.aspx  回復  更多評論
      


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 久久久久亚洲av无码专区蜜芽| 国产黄色一级毛片亚洲黄片大全 | 亚洲免费日韩无码系列| 亚洲高清毛片一区二区| 免费观看一级毛片| 亚洲精品无码mⅴ在线观看| 成人毛片手机版免费看| 精品韩国亚洲av无码不卡区| 国产黄色片在线免费观看| 国产亚洲蜜芽精品久久| 精品国产日韩亚洲一区| 女人隐私秘视频黄www免费| 亚洲国产精品无码AAA片| 毛片免费全部播放无码| 亚洲一级特黄特黄的大片 | 最近高清中文字幕无吗免费看| 亚洲伊人久久大香线焦| 永久中文字幕免费视频网站| 黄网站色成年片大免费高清| 亚洲日韩国产精品第一页一区| 华人在线精品免费观看| 亚洲成a人不卡在线观看| 国产男女猛烈无遮档免费视频网站| 一区在线免费观看| 亚洲av日韩av天堂影片精品| 精品香蕉在线观看免费| 国产在亚洲线视频观看| 久久精品国产亚洲| 女人18毛片a级毛片免费视频| 日本一区二区在线免费观看 | 日韩在线观看免费完整版视频| 亚洲成AV人片在线观看ww| 亚洲一区二区三区免费在线观看 | 在线免费视频你懂的| 亚洲日本在线播放| 免费成人av电影| 亚洲免费精彩视频在线观看| 亚洲色成人网站WWW永久四虎| 国产成人精品久久亚洲| 成人免费午夜无码视频| a级毛片在线免费观看|