這篇文章主要講解了“Hibernate的作用是什么”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“Hibernate的作用是什么”吧!
專注于為中小企業(yè)提供成都網(wǎng)站設(shè)計、網(wǎng)站建設(shè)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)揭東免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了上千余家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
一.Hibernate定義
Hibernate是一種Java語言下的對象關(guān)系映射解決方案。 它是一種自由、開源的軟件。它用來把對象模型表示的對象映射到基于SQL 的關(guān)系模型結(jié)構(gòu)中去,為面向?qū)ο蟮念I(lǐng)域模型到傳統(tǒng)的關(guān)系型數(shù)據(jù)庫的映射,提供了一個使用方便的框架。
二.Hibernate的作用
Hibernate 不僅管理Java 類到數(shù)據(jù)庫表的映射(包括從Java數(shù)據(jù)類型到SQL數(shù)據(jù)類型的映射),還提供數(shù)據(jù)查詢和獲取數(shù)據(jù)的方法,可以大幅度減少開發(fā)時人工使用SQL 和JDBC 處理數(shù)據(jù)的時間。
它的設(shè)計目標(biāo)是將軟件開發(fā)人員從大量相同的數(shù)據(jù)持久層相關(guān)編程工作中解放出來。無論是從設(shè)計草案還是從一個遺留數(shù)據(jù)庫開始,開發(fā)人員都可以采用Hibernate。
三.Hibernate的應(yīng)用
Hibernate對JDBC進(jìn)行了非常輕量級的對象封裝,使得Java程序員可以隨心所欲的使用對象編程思維來操縱數(shù)據(jù)庫。 Hibernate可以應(yīng)用在任何使用JDBC的場合,它既可以在Java的客戶端程序使用,也可以在Servlet/JSP的Web應(yīng)用中使用。***革命意義的是,Hibernate可以在應(yīng)用EJB(Enterprise JavaBeans是Java應(yīng)用于企業(yè)計算的框架)的J2EE架構(gòu)中取代CMP,完成數(shù)據(jù)持久化的重任。
四.Hibernate基礎(chǔ)——Hibernate API簡介
1.Hibernate API中的接口可以分為以下幾類:
1) 提供訪問數(shù)據(jù)庫的操作的接口,包括session、Transaction、Query接口;
2) 用于配置Hibernate的接口,Configuration;
3) 間接接口,使應(yīng)用程序接受Hibernate內(nèi)部發(fā)生的事件,并作出相關(guān)的回應(yīng),包括:Interceptor、Lifecycle、Validatable;
4) 用于擴(kuò)展Hibernate功能的接口,如UserType、CompositeUserType、IdentifierGenerator接口。
Hibernate內(nèi)部還封裝了JDBC、JTA(Java Transaction API)和JNDI(Java Naming And Directory Interface)。其中,JDBC提供底層的數(shù)據(jù)訪問操作,只要用戶提供了相應(yīng)的JDBC驅(qū)動程序,Hibernate可以訪問任何一個數(shù)據(jù)庫系統(tǒng)。JTA和JNDI使Hibernate能夠和J2EE應(yīng)用服務(wù)器集成。
2.Hibernate的核心接口框
五.Hibernate基礎(chǔ)——Hibernate的優(yōu)缺點
1.優(yōu)點:
a.Hibernate 使用 Java 反射機(jī)制 而不是字節(jié)碼增強(qiáng)程序來實現(xiàn)透明性。
b.Hibernate 的性能非常好,因為它是個輕量級框架。映射的靈活性很出色。
c. 它支持各種關(guān)系數(shù)據(jù)庫,從一對一到多對多的各種復(fù)雜關(guān)系。
2.缺點:
Hibernate限制您所使用的對象模型。例如,一個持久性類不能映射到多個表。
感謝各位的閱讀,以上就是“Hibernate的作用是什么”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對Hibernate的作用是什么這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!