更新時(shí)間:2021-03-01 16:13:53 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽2158次
Hibernate是一個(gè)開(kāi)放源代碼的對(duì)象關(guān)系映射框架,它對(duì)JDBC進(jìn)行了非常輕量級(jí)的對(duì)象封裝,它將POJO與數(shù)據(jù)庫(kù)表建立映射關(guān)系,是一個(gè)全自動(dòng)的orm框架,hibernate可以自動(dòng)生成SQL語(yǔ)句,自動(dòng)執(zhí)行,使得Java程序員可以隨心所欲的使用對(duì)象編程思維來(lái)操縱數(shù)據(jù)庫(kù)。

首先介紹一下Hibernate框架:
1.優(yōu)秀的持久化(通俗講把內(nèi)存上的短時(shí)間運(yùn)行信息存儲(chǔ)在持久化硬盤(pán)上)框架。
2.作用于持久層,因?yàn)闆](méi)什么侵入性,所以同樣適用于其他層面上的存儲(chǔ)
3.高度整合jdbc,簡(jiǎn)化了很多jdbc的操作。比如查詢(xún),比如存儲(chǔ)
4.二級(jí)緩存。緩存一部分所查詢(xún)的數(shù)據(jù),方便隨時(shí)調(diào)用,大大的減少了數(shù)據(jù)庫(kù)查詢(xún)。
5.ORM(Object/Rational Mapping)關(guān)系映射工具。對(duì)象關(guān)系映射把數(shù)據(jù)表的操作簡(jiǎn)化為對(duì)于對(duì)象的操作,讓面向?qū)ο笏季S更加實(shí)際。
然后開(kāi)始正式部署。部署之前首先調(diào)用jar包

除了以上的包還需要jdbc的所有包。這上面只是hibernate的包
(1)導(dǎo)入以上jar包
(2)在src下創(chuàng)建并編寫(xiě)Hibernate主配置文件用于初始化hibernate需要用的信息。這個(gè)文件可以放在src下,也可以放在classes下。命名為hibernate.cfg.xml
內(nèi)容如下
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<!--驅(qū)動(dòng)路徑注意數(shù)據(jù)庫(kù)類(lèi)型 -->
<property name="connection.driver_class"></property>
<!--數(shù)據(jù)庫(kù)路徑 -->
<property name="connection.url"></property>
<!--數(shù)據(jù)庫(kù)用戶(hù)名 -->
<property name="connection.username"></property>
<!--數(shù)據(jù)庫(kù)密碼 -->
<property name="connection.password"></property>
<!--方言,便于hibernate對(duì)象操作轉(zhuǎn)化為合適的數(shù)據(jù)庫(kù)語(yǔ)句 -->
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<!--是否顯示sql語(yǔ)句,sql一般會(huì)很難看 默認(rèn)為false-->
<property name="hibernate.show_sql">true</property>
<!--下一個(gè)層級(jí)的映射文件,用來(lái)配置bean對(duì)象與數(shù)據(jù)表之間的關(guān)系 -->
<mapping resource="com/dhh/pojo/Person.hbm.xml"/>
</session-factory>
</hibernate-configuration>
(3)在某個(gè)目錄下創(chuàng)建映射文件,這就是上一步提到的Person.hbm.xml。一般跟bean放在同一個(gè)目錄下,接受hibernate.cfg.xml管理的對(duì)象與數(shù)據(jù)表的關(guān)系中間件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!-- 注意包名。不寫(xiě)的話下面要寫(xiě)全限定名 -->
<hibernate-mapping package="com.dhh.pojo">
<!-- 類(lèi)名對(duì)應(yīng)表名 -->
<class name="Person" table="person">
<!-- 主鍵使用id標(biāo)簽。然后對(duì)應(yīng)屬性名與列名 -->
<id name="id" type="int" column="id">
<!-- 自增長(zhǎng)主鍵不同數(shù)據(jù)庫(kù)有不同類(lèi)型的自增長(zhǎng)類(lèi)型,有需要可以百度到答案的 -->
<generator class="identity"></generator>
</id>
<!-- 非主鍵映射關(guān)系,注意類(lèi)型并不是單純的java類(lèi)型也不是數(shù)據(jù)庫(kù)類(lèi)型,而是一種中間類(lèi)型,注意大小寫(xiě)特別是String在這里開(kāi)頭要小寫(xiě) -->
<property name="name" type="string" column="name"></property>
<property name="age" type="int" column="age"></property>
<property name="address" type="string" column="address"></property>
</class>
</hibernate-mapping>
上面所說(shuō)的主鍵自增長(zhǎng)類(lèi)型可參考下表

中間類(lèi)型參考下表

如果零基礎(chǔ)想要學(xué)習(xí)Hibernate,推薦動(dòng)力節(jié)點(diǎn)的Hibernate視頻教程,主要講解的Hibernate版本號(hào)為5.0.1,可以說(shuō)是國(guó)內(nèi)第一套基于Hibernate講解的Java視頻教程,Hibernate作為ORM的一個(gè)經(jīng)典框架,是Java開(kāi)發(fā)者必備的一項(xiàng)技能之一,本套Java視頻教程內(nèi)容講解細(xì)致,基本涵蓋了工作當(dāng)中所需要的所用知識(shí)點(diǎn)。
主講老師:動(dòng)力節(jié)點(diǎn)Java高級(jí)講師-郭老師
天津大學(xué)計(jì)算機(jī)專(zhuān)業(yè)碩士研究生,10年以上軟件研發(fā)及管理經(jīng)驗(yàn),先后就職于文思海輝、中軟國(guó)際、新東方教育科技集團(tuán)-國(guó)外項(xiàng)目研發(fā)部等知名軟件企業(yè),從事JavaEE方向的軟件研發(fā)工作;精通SSH、SSM技術(shù)架構(gòu)下的開(kāi)發(fā);精通WebLogic、WebSphere、JBoss、Tomcat等服務(wù)器的配置與管理;熟練使用MySQL、Oracle、DB2等數(shù)據(jù)庫(kù)產(chǎn)品;熟練使用HTML、CSS、JavaScript、Ajax、JQuery等前端交互技術(shù);熟練使用Axure原型設(shè)計(jì)工具;先后擔(dān)任高級(jí)Java軟件工程師、項(xiàng)目組長(zhǎng)、項(xiàng)目經(jīng)理、技術(shù)經(jīng)理、高級(jí)產(chǎn)品經(jīng)理及IT培訓(xùn)企業(yè)高級(jí)Java講師等職務(wù);具備扎實(shí)的技術(shù)功底、豐富的軟件研發(fā)、項(xiàng)目管理經(jīng)驗(yàn)及IT教學(xué)經(jīng)驗(yàn);授課激情四溢,幽默風(fēng)趣,能夠充分調(diào)動(dòng)學(xué)生學(xué)習(xí)的積極性與主動(dòng)性,課堂氣氛活躍,對(duì)學(xué)員耐心負(fù)責(zé);曾參與設(shè)計(jì)恒豐銀行 “一貫P2P理財(cái)系統(tǒng)”、設(shè)計(jì)廣發(fā)銀行個(gè)人網(wǎng)上銀行系統(tǒng)、設(shè)計(jì)中國(guó)農(nóng)業(yè)銀行網(wǎng)上銀行系統(tǒng)、設(shè)計(jì)江西銀行客服服務(wù)中心網(wǎng)上服務(wù)系統(tǒng)、設(shè)計(jì)成都銀行客服服務(wù)中心網(wǎng)上服務(wù)系統(tǒng)、設(shè)計(jì)樂(lè)山銀行網(wǎng)上銀行系統(tǒng)等大型項(xiàng)目。
以上就是動(dòng)力節(jié)點(diǎn)Java培訓(xùn)機(jī)構(gòu)的小編針對(duì)“Hibernate視頻講解,零基礎(chǔ)好學(xué)習(xí)”的內(nèi)容進(jìn)行的回答,希望對(duì)大家有所幫助,如有疑問(wèn),請(qǐng)?jiān)诰€咨詢(xún),有專(zhuān)業(yè)老師隨時(shí)為你服務(wù)。
相關(guān)閱讀
Java實(shí)驗(yàn)班
0基礎(chǔ) 0學(xué)費(fèi) 15天面授
Java就業(yè)班
有基礎(chǔ) 直達(dá)就業(yè)
Java夜校直播班
業(yè)余時(shí)間 高薪轉(zhuǎn)行
Java在職加薪班
工作1~3年,加薪神器
Java架構(gòu)師班
工作3~5年,晉升架構(gòu)
提交申請(qǐng)后,顧問(wèn)老師會(huì)電話與您溝通安排學(xué)習(xí)