隨筆-7  評論-24  文章-102  trackbacks-0


              數據庫技術已經成為企業信息平臺的核心。應用程序必須將業務相關的數據通過一定方式持久化到數據庫,還應能夠從數據庫獲取已有的數據,以適當的形式提供給客戶或支撐系統的運行。

              關鍵點:如何高效地存取數據、簡化編程模型、降低應用的復雜度

              在系統中引入持久層,負責所有相關數據的持久化操作,可以為整個應用系統提供一個高層、統一、安全、并發的數據持久機制。


          1、對象持久化技術

          1-1、Java 對象序列化
              序列化是 Java 語言中內置的輕量級數據持久化機制,該機制可以將任何實現了 java.io.Serializable 接口的對象轉化為連續的字節流數據,保存在文件中,或者通過網絡進行傳輸。這些數據日后可被還原為原先的對象狀態。
              缺點:局限性大,查詢只能返回數據流的下一個對象,不提供部分的讀取和更新,不提供對象的生命周期管理,只是簡單的讀取和寫入,不提供并發和事務特性。

          1-2、使用 JDBC
              JDBC(Java Database Connectivity)是用來訪問關系數據庫系統的標準 Java API。JDBC 只是提供訪問數據的接口,其底層實現有特定的數據庫廠商實現。
              缺點:直接使用 JDBC 實現持久化時,SQL 語句和應用代碼混雜在一起,邏輯混亂。另外直接使用 SQL 操作數據庫,不是面向對象。

          1-3、使用 JDO
              Java 數據對象(Java Data Object)是 JCP(Java Community Process)發布的一個規范,是 Java 對象持久化的標準。JDO 僅定義了標準的編程接口,而把關系映射的定義留給軟件供應商實現。

          1-4、實體 EJB
              實體 EJB(Enterpise Java Bean)是 Java 領域的數據持久化標準。

          1-5、對象關系映射
              對象關系映射(Ojbect Relation Mapping)在對象模型和關系模型之間建立溝通的橋梁。ORM 技術封裝了數據持久化的操作細節,為應用程序提供了一只訪問的接口,使應用程序可以專注于業務邏輯的處理。它采用 POJO(Plain Old Java Object,簡單的傳統對象)作為域對象的表述,不涉及域對象之外的技術細節,降低的 ORM 技術的侵入性,實現簡單,便于測試,具備高擴展性。


          2、對象關系映射模型
              一個完整的對象關系映射框架,應具備以下四個方面:

          ①、一個元數據映射規范,負責持久化類、類屬性的數據庫表、字段的映射,實現對象和關系的語義連接。
          ②、一組對象操作接口,用于完成數據的增加、刪除、修改和更新等操作。
          ③、一種面向對象的查詢語言,該語言能理解繼承、多態和關聯等面向對象特性,實現基于對象的查詢并在對象之間導航。
          ④、一系列與數據庫現關的技術實現和最佳實踐,保證系統的完整性并提高系統的可用性和擴展性。比如:事務、緩存和數據抓取策略等。

          對象模型(類、屬性、關聯)   <==>   關系模型(表、字段、約束)

           

          ps. <Hibernate 完全手冊>
          ISBN 978-7-111-23764-8
          機械工業出版社
          侯志松 余周 鄭煥 等編著

          posted on 2009-04-10 09:50 黃小二 閱讀(375) 評論(0)  編輯  收藏 所屬分類: S/S2SHJ2EEJ2SE
          主站蜘蛛池模板: 马公市| 万安县| 哈巴河县| 炉霍县| 丰顺县| 蕉岭县| 景谷| 楚雄市| 武安市| 闽侯县| 江达县| 克拉玛依市| 武山县| 淅川县| 民乐县| 万全县| 永济市| 江山市| 阜宁县| 乌拉特中旗| 海兴县| 武邑县| 吕梁市| 恩施市| 原阳县| 项城市| 洪湖市| 黔东| 工布江达县| 东乌珠穆沁旗| 乌拉特后旗| 青海省| 塔河县| 峡江县| 息烽县| 江华| 云梦县| 广西| 稷山县| 灯塔市| 宁津县|