IT數(shù)據(jù)運維:什么是數(shù)據(jù)持久化
2020-04-16 21:34 作者:admin 瀏覽量:
IT數(shù)據(jù)運維:什么是數(shù)據(jù)持久化
1.什么是持久化?
狹義的理解:
“持久化”僅僅指把域?qū)ο笥谰帽4娴綌?shù)據(jù)庫中;廣義的理解,“持久化”包括和數(shù)據(jù)庫相關(guān)的各種操作。
通俗理解:
數(shù)據(jù)持久化就是將內(nèi)存中的
數(shù)據(jù)模型轉(zhuǎn)換為
存儲模型,以及將存儲模型轉(zhuǎn)換為內(nèi)存中的數(shù)據(jù)模型的統(tǒng)稱. 數(shù)據(jù)模型可以是任何數(shù)據(jù)結(jié)構(gòu)或?qū)ο竽P?存儲模型可以是關(guān)系模型、XML、二進制流等。cmp和Hibernate只是對象模型到關(guān)系模型之間轉(zhuǎn)換的不同實現(xiàn)。Hibernate框架中數(shù)據(jù)持久化機制:在業(yè)務程序與數(shù)據(jù)庫之間,Hibernate框架使用Session會話,來完成數(shù)據(jù)的提交、更新、刪除、查詢等等。
數(shù)據(jù)持久化對象的基本操作有:
● 保存:把域?qū)ο笥谰帽4娴綌?shù)據(jù)庫。
● 更新:更新數(shù)據(jù)庫中域?qū)ο蟮臓顟B(tài)。
● 刪除:從數(shù)據(jù)庫中刪除一個域?qū)ο蟆?br />
● 加載:根據(jù)特定的OID,把一個域?qū)ο髲臄?shù)據(jù)庫加載到內(nèi)存。
● 查詢:根據(jù)特定的查詢條件,把符合查詢條件的一個或多個域?qū)ο髲臄?shù)據(jù)庫加載內(nèi)在存中。
2.為什么要持久化?
持久化技術(shù)封裝了數(shù)據(jù)訪問細節(jié),為大部分業(yè)務邏輯提供面向?qū)ο蟮腁PI。
● 通過
持久化技術(shù)可以減少訪問數(shù)據(jù)庫數(shù)據(jù)次數(shù),增加應用程序執(zhí)行速度;
● 代碼重用性高,能夠完成大部分數(shù)據(jù)庫操作;
● 松散耦合,使持久化不依賴于底層數(shù)據(jù)庫和上層業(yè)務邏輯實現(xiàn),更換數(shù)據(jù)庫時只需修改配置文件而不用修改代碼。
● 程序代碼重用性強,即使更換數(shù)據(jù)庫,只需要更改配置文件,不必重寫程序代碼
● 業(yè)務邏輯代碼可讀性強,在代碼中不會有大量的SQL語言,提高程序的可讀性
● 持久化技術(shù)可以自動優(yōu)化,以減少對數(shù)據(jù)庫的訪問量,提高程序運行效率
以上內(nèi)容由北京艾銻無限科技發(fā)展有限公司整理