標籤:持久層架構 hibernate
一、是什嗎? Hibernate是一個資料訪問架構(持久層架構),在項目中利用Hibernate架構可以實現對資料庫的增刪改查操作,為業務層構建一個持久層。使用該架構可以簡化資料作業碼,程式員可以將更多的精力放在業務編寫上。其本質上是對JDBC技術的封裝,Hibernate和JDBC的關係類似於Jquery和Javascript的關係。:
二、設計原理? Hibernate架構是一款ORM工具。基於ORM設計思想開發出來的。
ORM:Object--Relation--Mapping對象關係映射
對象指的就是Java的實體物件;
關係指的是關係型資料庫。(Oracle、DB2、MySql、SqlServer)
ORM的主要思想就是將程式中的對象和資料庫中的資料實現自動對應轉換。利用ORM工具,在查詢時,可以自動將記錄封裝成Java對象返回。在更新、插入操作時,可以將對象自動寫入資料表。對於中間的SQL+JDBC操作細節,完全封裝在工具底層。
基於ORM思想設計的架構有很多,例如Hibernate,iBATIS,JPA等.
三、架構結構? 介紹了這麼多理論知識,想必大家的頭已經有點膨脹了吧!那就讓我們從圖的思維來進一步瞭解它。
通過以上的結構圖,可以看出Hibernate的幾個主要的介面和類起到非常關鍵的作用,那麼接下來就讓我們進一步瞭解這幾個介面間的關係吧!
看到後是不是恍然大悟,原來Hibernate中的介面是這樣的關係啊??期待在今後項目中的實踐。
四、優缺點優點:
1.無需編寫大量複雜的SQL語句,提高生產力 2.程式中的實體物件和資料庫中的資料實現自動對應轉換,使開發更加對象化。 3.方便資料庫的移植。 4.沒有侵入性,支援透明持久化。
缺點:
1.使用資料庫特性的語句,將很難調優。
2.對大批量資料更新存在問題
3.系統中存在著大量統計查詢功能。
五、總結 綜上所述先對Hibernate的基礎知識進行了講解,先從宏觀上進行了把控,這樣才能做到知己知彼。那麼在接下來會對它從微觀上進行詳細的剖析。
Hibernate基礎篇