Hibernate入門復(fù)習(xí)資料

Hibernate入門


什么是hibernate框架

什么是orm思想:

1.hibernate使用orm思想對(duì)數(shù)據(jù)庫(kù)進(jìn)行crud操作

2.在web階段學(xué)習(xí)的javabean,更正確的叫法叫:實(shí)體類

3.orm: object relational mapping ,對(duì)象關(guān)系映射

(1)文字描述:??讓實(shí)體類和數(shù)據(jù)可進(jìn)行一一對(duì)應(yīng)關(guān)系 ?(類中的屬性跟表中的字段一一對(duì)應(yīng));使用配置文件配置

(2)不需要直接操作數(shù)據(jù)庫(kù)表,而操作對(duì)應(yīng)實(shí)體類對(duì)象


搭建hibernate環(huán)境:

一:導(dǎo)包

1.hibernate必須的jar包;

2.hibernate運(yùn)行時(shí)會(huì)輸出日志信息,但是hibernate本身沒有支持的jar包,所以要導(dǎo)入外部jar包來支持

3.mysql驅(qū)動(dòng)jar包

二:創(chuàng)建實(shí)體類;(hibernate中要求每個(gè)類中都有一個(gè)唯一的屬性值,例如表中的主鍵id)

三:配置實(shí)體類和數(shù)據(jù)庫(kù)表的一一對(duì)應(yīng)關(guān)系(映射關(guān)系)

1.使用配置文件實(shí)現(xiàn)映射關(guān)系

(1)創(chuàng)建xml格式的配置文件

-映射配置文件名稱和位置沒有固定的要求

-建議:實(shí)體類所在包里面創(chuàng)建.實(shí)體類名稱:hbm.xml (hbm: hibernate mapping)

(2)配置是xml格式,在配置文件中首先引入xml約束

-hibernate中引入的事dtd約束

(3)配置映射關(guān)系;

1
2

四:創(chuàng)建hibernate的核心配置文件

(1)核心配置文件格式xml,位置文件名稱和位置是固定的

-位置:必須src下面

-名字:hibernate.cfg.xml

(2)引入dtd約束

引入約束

(3)hibernate操作過程中,只會(huì)加載核心配置文件,其他文件不會(huì)加載

全都在這倆個(gè)標(biāo)簽內(nèi)

①:配置數(shù)據(jù)庫(kù)的信息

數(shù)據(jù)庫(kù)的信息

②:配置hibernate信息

配置hibernate信息

③:把映射文件放到核心配置文件中

映射文件放到核心配置文件中


實(shí)現(xiàn)操作步驟:

第一步:加載hibernate核心配置文件

第二步:創(chuàng)建SessionFactory對(duì)象

第三步:使用SessionFactory創(chuàng)建session對(duì)象

第四步:開啟事務(wù)

第五步:寫具體的邏輯crud操作

第六步:提交事務(wù)

第七步:關(guān)閉資源(web項(xiàng)目中沒必要關(guān)閉資源)

1
2

hibernate核心api:

-Configuration:

(1)到src下找到名稱hibernate.cfg.xml配置文件,創(chuàng)建對(duì)象,吧配置文件放到對(duì)象里


-SessionFactory

配置這個(gè)會(huì)自動(dòng)生成表

1.使用configuration對(duì)象創(chuàng)建sessionFactory對(duì)象

(1).創(chuàng)建sessionFactory過程中做的事情

-根據(jù)核心配置文件中,有數(shù)據(jù)庫(kù)配置,有映射文件部分,到數(shù)據(jù)庫(kù)里面根據(jù)映射關(guān)系把表創(chuàng)建

2.創(chuàng)建sessionFactory過程中,這個(gè)過程特別耗資源

(1)因此在hibernate操作中,建議一個(gè)項(xiàng)目一般創(chuàng)建一個(gè)sessionFactory對(duì)象

(2)具體實(shí)現(xiàn):

*寫工具類,寫靜態(tài)代碼塊實(shí)現(xiàn)(靜態(tài)代碼塊在類加載時(shí)候執(zhí)行,執(zhí)行一次)

代碼

-Session(重點(diǎn))

1.session類似于jdbc中的connection

2.調(diào)用session中的方法

(1)添加 save 方法

(2)修改 update

(3)刪除 delete

(4)根據(jù)id查詢 get 方法

3.session對(duì)象單線程對(duì)象

(1)sess對(duì)象不能共用,只能自己使用

-Transaction(事務(wù))

1.session開啟事務(wù)

2.方法

(1)提交.commit

(2)回滾:roll back


hibernate對(duì)象的三種狀態(tài):

1.瞬時(shí)狀態(tài)

2.持久狀態(tài)

3.托管狀態(tài)


二級(jí)緩存:

各個(gè)session查出來的信息儲(chǔ)存在的一個(gè)公共區(qū)域;


更改信息,如何保持緩存與數(shù)據(jù)庫(kù)信息一致:

先檢查緩存中是否有要更改的信息,有的話先刪除掉,再把數(shù)據(jù)庫(kù)的信息更改

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 本文包括: 1、CRM 項(xiàng)目的整體介紹 2、Hibernate 框架概述 3、Hibernate 快速入門 4、H...
    廖少少閱讀 3,530評(píng)論 9 66
  • 本文中我們介紹并比較兩種最流行的開源持久框架:iBATIS和Hibernate,我們還會(huì)討論到Java Persi...
    大同若魚閱讀 4,435評(píng)論 4 27
  • Hibernate: 一個(gè)持久化框架 一個(gè)ORM框架 加載:根據(jù)特定的OID,把一個(gè)對(duì)象從數(shù)據(jù)庫(kù)加載到內(nèi)存中OID...
    JHMichael閱讀 2,093評(píng)論 0 27
  • 目錄 1. Hibernate框架的概述 1.1 Hibernate簡(jiǎn)介 1.2 為什么要學(xué)習(xí)Hibernate ...
    深海魚Q閱讀 1,119評(píng)論 0 14
  • 伊甸園的大樹對(duì)玫瑰說:“你雖然漂亮,但沒什么實(shí)用。”于是玫瑰找到上帝將自己變成了一顆卷心菜。唉!挺可惜。 我想說的...
    匪可閱讀 610評(píng)論 0 0

友情鏈接更多精彩內(nèi)容