posts - 66,  comments - 11,  trackbacks - 0
              持久:英文即Persistence,簡單來講,也就是把數據保存到可掉電式存儲設備中供之后使用。數據持久化往往意味著將內存中的數據保存到磁盤上加以固化,而持久化的實現過程則大多通過各種關系型數據庫來完成。
              持久層:也就是在系統邏輯層面上,專注于實現數據持久化的一個相對獨立的領域。
              所謂的持久層,其判定標準
              1、如果表示層發生變化,需要從JSP遷移到Java WebStart Client,我們的數據庫代碼是否需要重新編譯。
              2、如果業務邏輯層發生了變化,那么數據持久化代碼是否需要重新編譯?
              3、如果地秤數據庫持久化機制發生了改變,那么,系統中的非持久化部分代碼是否需要重新編譯?
             
              何謂耦合:就是事務之間的相互關聯關系
              何謂解耦:即采用一些手段降低關聯的緊密程度。
              我們需要的是一個粒度適中的耦合關系,而并非完全意義上的松耦合。
             
              軟件系統的研發過程中,貫穿了技術層面和業務層面的代碼實現過程。程序邏輯必須結合業務領域內相應的數據和系統資源,反映出特定的業務邏輯。對于一個業務系統而言,系統研發的目的是為特定業務提供支持,業務邏輯往往是系統實現的核心。此時,將業務邏輯與數據訪問邏輯相分離尤為重要。

              在業務邏輯的實現過程中,我們應該避免業務邏輯代碼中混雜數據訪問代碼,而同樣,數據訪問代碼中,也應該避免出現業務邏輯代碼。

              通過良好的設計將邏輯結構與物理結構相分離。這里所謂的物理結構并非傳統意義上的硬件設備,而是我們所無法控制的系統層面,如底層數據庫接口。

              目標只有一個,底層實現變動的情況下,盡量避免對上層結構產生影響。一個設計良好的持久層實現,即便從oracle切換到mysql數據庫,也不會引起大范圍的代碼變更。

              DAO(Data Access Object)模式,DAO模式實際上是2個模式的組合,即Data Accessor模式和Active Domain Object模式,其中Data Accessor模式實現了數據訪問和業務邏輯的分離,而Active Domain Object模式實現了業務數據的對象化封裝,一般我們將這2個模式組合使用。
              DAO模式通過對業務層提供數據抽象層接口,實現了以下目標:
              1、數據存儲邏輯的分離
              通過對數據訪問邏輯進行抽象,為上層結構提供抽象化的數據訪問接口。業務層無需關心具體的select,insert,update操作,這樣,一方面避免了業務代碼中混雜JDBC調用語句,使得業務邏輯實現更加清晰,另一方面,由于數據訪問接口與數據訪問實現相分離,也使得開發人員的專業劃分成為可能。
              2、數據訪問底層實現的分離
              DAO模式通過將數據訪問劃分為抽象層和實現層,從而分離了數據使用和數據訪問的底層實現細節。這意味著業務層與數據訪問的底層細節無關,也就是說,我們可以在保持上層結構不變的情況下,通過切換底層實現來修改數據訪問的具體機制。
              3、資源管理和調度的分離
              在數據庫操作中,資源的管理和調度是一個非常值得關注的主題。大多數系統的性能瓶頸往往并非集中在業務邏輯處理本身。DAO模式將數據訪問邏輯從業務邏輯中脫離出來,使得在數據訪問層實現統一的資源調度成為可能,通過數據庫連接池以及各種緩存機制的配合使用,往往可以在保持上層系統不變的情況下,大幅度提升系統性能。
              4、數據抽象
              DAO模式通過對底層數據的封裝,為業務層提供一個面向對象的接口,使得業務邏輯開發人員可以面向業務中的實體進行編碼。通過引入DAO模式,業務邏輯更加清晰,且富裕形象性和描述性。

          posted on 2009-10-05 10:32 王永慶 閱讀(246) 評論(0)  編輯  收藏 所屬分類: HIBERNATE
          <2009年10月>
          27282930123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          常用鏈接

          留言簿(1)

          隨筆分類

          隨筆檔案

          關注blogs

          搜索

          •  

          最新評論

          • 1.?re: 心中的那個她[未登錄]
          • 如果心情能那么容易放開就好了,碰到她是我的緣分,但是她的緣分不知道在哪里。
          • --王永慶
          • 2.?re: 心中的那個她[未登錄]
          • 兄弟,喜歡就大膽去追好了,就是因為喜歡才會有不愉快,如果想一輩子沒有這些煩惱,找一個可有可無的人就好了。這種事講的是緣分吧。別人對你好不好其實不太重要。放開心情就好了。
          • --萍水相逢
          • 3.?re: 心中的那個她
          • 只能同甘不能共苦,就他媽算了吧,程序員也是人??!我現在也很討厭女的不理解人情。
          • --咖啡妝
          • 4.?re: 難以割舍的那份情感
          • 評論內容較長,點擊標題查看
          • --王永慶
          • 5.?re: 難以割舍的那份情感
          • 評論內容較長,點擊標題查看
          • --隔葉黃鶯

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 东乡县| 千阳县| 噶尔县| 嘉义市| 三原县| 女性| 双鸭山市| 尖扎县| 酒泉市| 苗栗市| 桃园市| 万州区| 商水县| 扎赉特旗| 峨边| 郧西县| 巴林右旗| 保山市| 金乡县| 西吉县| 确山县| 安平县| 福州市| 宁河县| 靖宇县| 崇仁县| 炉霍县| 墨脱县| 古交市| 东乌珠穆沁旗| 天水市| 板桥市| 辽阳市| 昔阳县| 仙游县| 巴林左旗| 九台市| 迁安市| 盈江县| 南阳市| 龙游县|