什麼是持久化?
從孫衛琴寫的《精通Hibernate:Java對象持久化技術詳解》中,看到如下的解釋,感覺還是比較完整的。摘抄如下:
狹義的理解: “持久化”僅僅指把域對象永久保存到數據庫中;廣義的理解,“持久化”包括和數據庫相關的各種操作。
● 保存:把域對象永久保存到數據庫。
● 更新:更新數據庫中域對象的狀態。
● 刪除:從數據庫中刪除一個域對象。
● 加載:根據特定的OID,把一個域對象從數據庫加載到內存。
● 查詢:根據特定的查詢條件,把符合查詢條件的一個或多個域對象從數據庫加載內在存中。
2.爲什麼要持久化?
持久化技術封裝了數據訪問細節,爲大部分業務邏輯提供面向對象的API。
● 通過持久化技術可以減少訪問數據庫數據次數,增加應用程序執行速度;
● 代碼重用性高,能夠完成大部分數據庫操作;
● 鬆散耦合,使持久化不依賴於底層數據庫和上層業務邏輯實現,更換數據庫時只需修改配置文件而不用修改代碼。