關於Hibernate持久化

來源:互聯網
上載者:User

標籤:

1.應用程式階層演變

縱觀幾十年的電腦應用軟體的演變過程,應用程式逐漸由單層體繫結構發展為多層體繫結構。最初應用軟體只是在大型主機上的單層應用程式,大都採用檔案系統儲存資料。20世紀70年代,隨著資料庫的普及,原來的單層結構發展為雙層結構。在雙層結構中,實現了資料存放與應用程式的分離。但是,負責使用者介面互動的代碼與商務邏輯混雜在一起,一個小的系統尚可以維護但是對於企業級的應用,長期的維護就是一件十分困難的事情。因此,三層的體繫結構應運而生。在三層結構中,把原來的應用程式層分成了視圖層和商務邏輯層、資料庫層維持不變。隨著軟體行業的蓬勃發展,人們感覺這樣頻繁的操作資料庫和大量的底層代碼的重複書寫極大的浪費了程式人員的心血,Hibernate,Spring,等架構的應運而生了。

在Hibernate中又將原來原商務邏輯層分成了商務邏輯層和持久層。(現在主流的分層結構依然是三層結構).

2.什麼是持久化? 為什麼要持久化?

1.什麼是持久化?

本人找了好多文章都沒有找到滿意的答案,最後是從孫衛琴寫的《精通Hibernate:Java對象持久化技術詳解》中,看到如下的解釋,感覺還是比較完整的。摘抄如下:

狹義的理解: “持久化”僅僅指把域對象永久儲存到資料庫中;廣義的理解,“持久化”包括和資料庫相關的各種操作(持久化就是將有用的資料以某種技術儲存起來,將來可以再次取出來應用,資料庫技術,將記憶體資料一檔案的形式儲存在永久介質中(磁碟等)都是持久化的例子.)。

●     儲存:把域對象永久儲存到資料庫。

●     更新:更新資料庫中域對象的狀態。

●     刪除:從資料庫中刪除一個域對象。

●     載入:根據特定的OID,把一個域對象從資料庫載入到記憶體。

●     查詢:根據特定的查詢條件,把符合查詢條件的一個或多個域對象從資料庫載入內在存中。

2.為什麼要持久化?

持久化技術封裝了資料訪問細節,為大部分商務邏輯提供物件導向的API。

● 通過持久化技術可以減少訪問資料庫資料次數,增加應用程式執行速度;

● 代碼重用性高,能夠完成大部分資料庫操作;

● 鬆散耦合,使持久化不依賴於底層資料庫和上層商務邏輯實現,更換資料庫時只需修改設定檔而不用修改代碼。

關於Hibernate持久化

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.