當前位置:首頁 » 操作系統 » 資料庫持久層

資料庫持久層

發布時間: 2022-05-03 01:19:16

㈠ 持久層的概述

大多數情況下特別是企業級應用,數據持久化往往也就意味著將內存中的數據保存到磁碟上加以固化,而持久化的實現過程則大多通過各種關系資料庫來完成。
那麼什麼是持久層呢?
延續思路,所謂「持久層」,也就是在系統邏輯層面上,專著於實現數據持久化的一個相對獨立的領域(Domain)。
持久層是負責向(或者從)一個或者多個數據存儲器中存儲(或者獲取)數據的一組類和組件。這個層必須包括一個業務領域實體的模型(即使只是一個元數據模型)。
不過這里有一個字需要特別強調,也就是所謂的「層」。
對於應用系統而言,數據持久功能大多是必不可少的組成部分。那不就是說,我們的系統中,已經天然的具備了「持久層」概念?
也許是,但也許實際情況並非如此。
之所以要獨立出一個「持久層」的概念,而不是「持久模塊」,「持久單元」,也就意味著,我們的系統架構中,應該有一個相對獨立的邏輯層面,專著於數據持久化邏輯的實現.與系統其他部分相對而言,這個層面應該具有一個較為清晰和嚴格的邏輯邊界。

㈡ 請問java三層架構,持久層,業務層,表現層,都該怎麼理解和MVC三層模型有什麼

這個嘛,有一定的聯系啦,也並不是完全是一樣的啦,你首先把mvc理解清楚吧,M是MODEL(模型),V是view(視圖), C是Controller(控制器),而java三層架構,持久層即是數據的持久化操作,就是數據層啦,即是資料庫啦,業務層主要是業務邏輯的處理,負責表示層與數據層(持久層)的數據的傳遞和邏輯處理,就當很接近控制器的功能啦,就可以理解為控制器啦,表示層即是對數據的展示與用戶的輸入,所以呢?就是視圖層啦 1. 用戶看到view2. view ——————————》 controller用戶操作(點擊按鈕等)3. controller——————》model調用model中方法3. model ——————》 controller返回數據到controller5. controller——————————》 view傳數據到view,更新view6.用戶看到更新後的view M——模型層,V——視圖層,C——控制層,持久層——通常用於封裝資料庫連接、數據查詢等操作,

㈢ 什麼是數據持久層

J2EE的三層結構是指表示層(Presentation),業務邏輯層(Business Logic)以及基礎架構層(Infrastructure),這樣的劃分非常經典,但是在實際的項目開發法中,開發者通常對三層結構進行擴展來滿足一些項目的具體要求,一個最常用的擴展就是將三層體系擴展為五層體系,即表示層(Presentation)、控制/中介層(Controller/Mediator)、領域層(Domain)、數據持久層(Data Persistence)和數據源層(Data Source)。它其實是在三層架構中增加了兩個中間層。控制/中介層位於表示層和領域層之間,數據持久層位於領域層和基礎架構層之間。由於對象範例和關系範例這兩大領域之間存在「阻抗不匹配」,所以把數據持久層單獨作為J2EE體系的一個層提出來的原因就是能夠在對象-關系資料庫之間提供一個成功的企業級映射解決方案,盡最大可能彌補這兩種範例之間的差異。
三種持久層主流解決方案

1、JDBC
許多開發者用JDBC進行資料庫程序的開發。此中方式很多情況下都使用DAO模式,採用sql進行查詢。雖然用此方式可以使應用程序代碼與具體的資料庫廠商和資料庫位置無關,不過JDBC是低級別的資料庫訪問方式,JDBC並不支持面向對象的資料庫表示。JDBC資料庫表示完全圍繞關系資料庫模型。在大型應用程序的DAO中書寫這樣的代碼,維護量是非常大的。

2、EJB
在J2EE的規范中,為EJB定義了兩種持久化的解決方案:一種是BMP,另一種是CMP。其中CMP不需要將SQL語句加入到代碼中。目前,在採用J2EE的應用中,EJB CMP方式得到了廣泛應用。更加引人注意的是,隨著EJB規范的發展,CMP也包含了一些高級關系的內容。但是,CMP的使用比較復雜,對很多開發人員來說比較難以掌握。而且,不是在所有的情況下都適合在系統中採用EJB,而且想要非常清楚的了解EJB規范也是非常費時的。在用EJB編碼前,先要讓專家理解API,然後需要了解每一個容器部署時所要關注的技術。此外,許多情況下商用容器的性能和支持也不是很好。

3、JDO
JDO是一個存儲java對象的規范,JDO規范1.0的提出可以使你將精力集中在設計Java對象模型,然後在企業應用軟體架構的不同層面中存儲傳統的Java對象(Plain Old Java Objects,簡稱POJOs),採用JDOQL語言進行SQL操作。一些公司(包括sun)企圖根據JDO規范進行設計並實現JDO產品,然而他們都不能很好的進行實現,並且性能優化上比較差。

㈣ java中什麼是持久層

持久層,又叫數據訪問層。是和資料庫直接打交道的層。
所有增刪改查的操作全在這個層里

㈤ 資料庫持久層是什麼東西

MySQL是一個小型關系型資料庫管理系統,被廣泛地應用在Internet上的中小型網站中。由於其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,許多中小型網站為了降低網站總體擁有成本而選擇了MySQL作為網站資料庫。
這樣說可能有點專業了,簡單來說,就是一個存儲數據的倉庫,可以存儲文字,圖片之類的信息,實現數據操作的增刪改查,是網站運行的命脈所在。

PHP呢是一種程序開發語言,一般來說用在網站上面的比較多一些,網站開發的話順理成章就要用到資料庫了,這里,人們首選就是MYSQL,因為有大牛們測試過,PHP和MYSQL搭配起來運行效率各方面都比較不錯,是中小型網站開發的首選,與它倆搭配的還有 APAPHE 和 LINUX,業內人士都把這四個合稱為 LAMP。

想更多了解的話可以上專業一點的網站上去了解,比如說LAMP兄弟連,康盛創想之類的都是比較知名的PHP開發培訓機構,裡面的內容很豐富。

㈥ 數據持久層的三種持久層主流解決方案

JDO是一個存儲java對象的規范,JDO規范1.0的提出可以使你將精力集中在設計Java對象模型,然後在企業應用軟體架構的不同層面中存儲傳統的Java對象(Plain Old Java Objects,簡稱POJOs),採用JDOQL語言進行SQL操作。一些公司(包括sun)企圖根據JDO規范進行設計並實現JDO產品,然而他們都不能很好的進行實現,並且性能優化上比較差。

㈦ 數據持久層是什麼意思

數據持久層位於領域層和基礎架構層之間。

由於對象範例和關系範例這兩大領域之間存在「阻抗不匹配」,所以把數據持久層單獨作為J2EE體系的一個層提出來的原因就是能夠在對象-關系資料庫之間提供一個成功的企業級映射解決方案,盡最大可能彌補這兩種範例之間的差異。

(7)資料庫持久層擴展閱讀:

J2EE的三層結構是指表示層,業務邏輯層以及基礎架構層,這樣的劃分非常經典,但是在實際的項目開發法中,開發者通常對三層結構進行擴展來滿足一些項目的具體要求。

一個最常用的擴展就是將三層體系擴展為五層體系,即表示層、控制/中介層、領域層、數據持久層和數據源層。

在J2EE的規范中,為EJB定義了兩種持久化的解決方案:一種是BMP,另一種是CMP,其中CMP不需要將SQL語句加入到代碼中。

在採用J2EE的應用中,EJB CMP方式得到了廣泛應用。更加引人注意的是,隨著EJB規范的發展,CMP也包含了一些高級關系的內容。

但是,CMP的使用比較復雜,對很多開發人員來說比較難以掌握。而且,不是在所有的情況下都適合在系統中採用EJB,而且想要非常清楚的了解EJB規范也是非常費時的。

在用EJB編碼前,先要讓專家理解API,然後需要了解每一個容器部署時所要關注的技術。此外,許多情況下商用容器的性能和支持也不是很好。

㈧ 通過數據源可以直接操作資料庫,為什麼又要弄持久層

這個問題就像泡茶一樣,有人喜歡把茶葉(相當於sql語句)直接放進杯子里,而有人喜歡用茶葉包(持久層)包著。數據源就是將一般性的sql語句能夠嵌套在程序代碼中,然後用相應的介面方法執行,它更多的傾向於提供執行介面,而持久層更加傾向於sql的管理。知道為什麼了吧,兩者其實不矛盾,也沒有誰比誰更好的說法,只是看你的項目需要了。非要有比較的話,一般性的應用程序(對資料庫的操作頻率高,但是數據量不大的情況像博客網站之類)用數據源足已;當然相反的情況下用持久層,在這里建議你:在需要長期維護和將來可能增加新功能的項目中採用持久層。

㈨ 資料庫表不固定,經常需要變更欄位,沒有固定的entity,持久層框架應該怎麼選

可以考慮使用MyBatis。可以在持久層中針對不同的傳入條件,靈活地生成不同的建表語句。傳入傳出參數可以使用Map,不使用entity。使用Map可以靈活地根據不同的key取得不同欄位的值。

㈩ 資料庫持久層到底有什麼作用和意義

持久層一般指把數據保存到資料庫里。為啥要叫持久層。我覺得只有持久這個詞能准確表達它的作用。這么大量的表,持久層啊,想想就恐怖。光光持久層的維護,就有很大的工作量了。
雖然不知道你的應用環境,不過感覺上,你應該盡可能的利用資料庫了,比如存儲過程這類的。

熱點內容
萬魔斬腳本 發布:2024-10-06 08:23:18 瀏覽:876
華強北耳機連安卓手機下什麼軟體 發布:2024-10-06 08:21:53 瀏覽:251
兒科發現傳染病的應急演練腳本 發布:2024-10-06 08:21:48 瀏覽:598
玩王者榮耀的時候要買哪個配置 發布:2024-10-06 08:19:41 瀏覽:620
imovie怎麼清理緩存 發布:2024-10-06 08:14:30 瀏覽:17
python字典list 發布:2024-10-06 08:14:26 瀏覽:578
amhip訪問 發布:2024-10-06 08:03:54 瀏覽:437
joy加密 發布:2024-10-06 07:53:27 瀏覽:201
結構是由哪種腳本語言填寫的 發布:2024-10-06 07:24:27 瀏覽:744
客戶端反編譯教學 發布:2024-10-06 07:10:42 瀏覽:783