持久層

持久層

所謂“持久層”,也就是在系統邏輯層面上,專注於實現數據持久化的一個相對獨立的領域(Domain),是把數據保存到可掉電式存儲設備中。持久層是負責向(或者從)一個或者多個數據存儲器中存儲(或者獲取)數據的一組類和組件。

這個層必須包括一個業務領域實體的模型(即使只是一個元數據模型)。

基本介紹

  • 中文名:持久層
  • 外文名: persistence
  • 定義:把數據保存到可掉電式存儲設備中
  • 目的:供以後使用
  • 性質:現象
概述,持久層框架,

概述

大多數情況下特別是企業級套用,數據持久化往往也就意味著將記憶體中的數據保存到磁碟上加以固化,而持久化的實現過程則大多通過各種關係資料庫來完成。
不過這裡有一個字需要特彆強調,也就是所謂的“層”。
對於套用系統而言,數據持久功能大多是必不可少的組成部分。那不就是說,我們的系統中,已經天然的具備了“持久層”概念?
也許是,但也許實際情況並非如此。
之所以要獨立出一個“持久層”的概念,而不是“持久模組”,“持久單元”,也就意味著,我們的系統架構中,應該有一個相對獨立的邏輯層面,專著於數據持久化邏輯的實現.與系統其他部分相對而言,這個層面應該具有一個較為清晰和嚴格的邏輯邊界。

持久層框架

Hibernate是一個開放原始碼對象關係映射框架,它對JDBC進行了非常輕量級的對象封裝,使得Java程式設計師可以隨心所欲的使用對象編程思維來操縱資料庫。 Hibernate可以套用在任何使用JDBC的場合,既可以在Java的客戶端程式使用,也可以在Servlet/JSP的Web套用中使用,最具革命意義的是,Hibernate可以在套用EJB的J2EE架構中取代CMP,完成數據持久化的重任。Eclipse平台下的Hibernate輔助開發工具:【Hibernate Synchronizer】【MiddlegenIDE
使用MyBatis 提供的ORM機制,對業務邏輯實現人員而言,面對的是純粹的Java對象, 這一層與通過Hibernate 實現ORM 而言基本一致,而對於具體的數據操作,Hibernate 會自動生成SQL 語句,而MyBatis則要求開發者編寫具體的SQL 語句。相對Hibernate等 “全自動”ORM機制而言,MyBatis 以SQL開發的工作量和資料庫移植性上的讓步,為系統 設計提供了更大的自由空間。作為“全自動”ORM 實現的一種有益補充,MyBatis 的出現顯 得別具意義。

相關詞條

熱門詞條

聯絡我們