更新時間:2021-03-01 16:13:53 來源:動力節(jié)點 瀏覽1812次
Hibernate是一個開放源代碼的對象關(guān)系映射框架,它對JDBC進行了非常輕量級的對象封裝,它將POJO與數(shù)據(jù)庫表建立映射關(guān)系,是一個全自動的orm框架,hibernate可以自動生成SQL語句,自動執(zhí)行,使得Java程序員可以隨心所欲的使用對象編程思維來操縱數(shù)據(jù)庫。
首先介紹一下Hibernate框架:
1.優(yōu)秀的持久化(通俗講把內(nèi)存上的短時間運行信息存儲在持久化硬盤上)框架。
2.作用于持久層,因為沒什么侵入性,所以同樣適用于其他層面上的存儲
3.高度整合jdbc,簡化了很多jdbc的操作。比如查詢,比如存儲
4.二級緩存。緩存一部分所查詢的數(shù)據(jù),方便隨時調(diào)用,大大的減少了數(shù)據(jù)庫查詢。
5.ORM(Object/Rational Mapping)關(guān)系映射工具。對象關(guān)系映射把數(shù)據(jù)表的操作簡化為對于對象的操作,讓面向?qū)ο笏季S更加實際。
然后開始正式部署。部署之前首先調(diào)用jar包
除了以上的包還需要jdbc的所有包。這上面只是hibernate的包
(1)導入以上jar包
(2)在src下創(chuàng)建并編寫Hibernate主配置文件用于初始化hibernate需要用的信息。這個文件可以放在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ū)動路徑注意數(shù)據(jù)庫類型 -->
<property name="connection.driver_class"></property>
<!--數(shù)據(jù)庫路徑 -->
<property name="connection.url"></property>
<!--數(shù)據(jù)庫用戶名 -->
<property name="connection.username"></property>
<!--數(shù)據(jù)庫密碼 -->
<property name="connection.password"></property>
<!--方言,便于hibernate對象操作轉(zhuǎn)化為合適的數(shù)據(jù)庫語句 -->
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<!--是否顯示sql語句,sql一般會很難看 默認為false-->
<property name="hibernate.show_sql">true</property>
<!--下一個層級的映射文件,用來配置bean對象與數(shù)據(jù)表之間的關(guān)系 -->
<mapping resource="com/dhh/pojo/Person.hbm.xml"/>
</session-factory>
</hibernate-configuration>
(3)在某個目錄下創(chuàng)建映射文件,這就是上一步提到的Person.hbm.xml。一般跟bean放在同一個目錄下,接受hibernate.cfg.xml管理的對象與數(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">
<!-- 注意包名。不寫的話下面要寫全限定名 -->
<hibernate-mapping package="com.dhh.pojo">
<!-- 類名對應表名 -->
<class name="Person" table="person">
<!-- 主鍵使用id標簽。然后對應屬性名與列名 -->
<id name="id" type="int" column="id">
<!-- 自增長主鍵不同數(shù)據(jù)庫有不同類型的自增長類型,有需要可以百度到答案的 -->
<generator class="identity"></generator>
</id>
<!-- 非主鍵映射關(guān)系,注意類型并不是單純的java類型也不是數(shù)據(jù)庫類型,而是一種中間類型,注意大小寫特別是String在這里開頭要小寫 -->
<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>
上面所說的主鍵自增長類型可參考下表
中間類型參考下表
如果零基礎(chǔ)想要學習Hibernate,推薦動力節(jié)點的Hibernate視頻教程,主要講解的Hibernate版本號為5.0.1,可以說是國內(nèi)第一套基于Hibernate講解的Java視頻教程,Hibernate作為ORM的一個經(jīng)典框架,是Java開發(fā)者必備的一項技能之一,本套Java視頻教程內(nèi)容講解細致,基本涵蓋了工作當中所需要的所用知識點。
主講老師:動力節(jié)點Java高級講師-郭老師
天津大學計算機專業(yè)碩士研究生,10年以上軟件研發(fā)及管理經(jīng)驗,先后就職于文思海輝、中軟國際、新東方教育科技集團-國外項目研發(fā)部等知名軟件企業(yè),從事JavaEE方向的軟件研發(fā)工作;精通SSH、SSM技術(shù)架構(gòu)下的開發(fā);精通WebLogic、WebSphere、JBoss、Tomcat等服務器的配置與管理;熟練使用MySQL、Oracle、DB2等數(shù)據(jù)庫產(chǎn)品;熟練使用HTML、CSS、JavaScript、Ajax、JQuery等前端交互技術(shù);熟練使用Axure原型設(shè)計工具;先后擔任高級Java軟件工程師、項目組長、項目經(jīng)理、技術(shù)經(jīng)理、高級產(chǎn)品經(jīng)理及IT培訓企業(yè)高級Java講師等職務;具備扎實的技術(shù)功底、豐富的軟件研發(fā)、項目管理經(jīng)驗及IT教學經(jīng)驗;授課激情四溢,幽默風趣,能夠充分調(diào)動學生學習的積極性與主動性,課堂氣氛活躍,對學員耐心負責;曾參與設(shè)計恒豐銀行 “一貫P2P理財系統(tǒng)”、設(shè)計廣發(fā)銀行個人網(wǎng)上銀行系統(tǒng)、設(shè)計中國農(nóng)業(yè)銀行網(wǎng)上銀行系統(tǒng)、設(shè)計江西銀行客服服務中心網(wǎng)上服務系統(tǒng)、設(shè)計成都銀行客服服務中心網(wǎng)上服務系統(tǒng)、設(shè)計樂山銀行網(wǎng)上銀行系統(tǒng)等大型項目。
以上就是動力節(jié)點Java培訓機構(gòu)的小編針對“Hibernate視頻講解,零基礎(chǔ)好學習”的內(nèi)容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務。