2022年Hibernate知識(shí)點(diǎn)歸納總結(jié)_第1頁
2022年Hibernate知識(shí)點(diǎn)歸納總結(jié)_第2頁
2022年Hibernate知識(shí)點(diǎn)歸納總結(jié)_第3頁
2022年Hibernate知識(shí)點(diǎn)歸納總結(jié)_第4頁
2022年Hibernate知識(shí)點(diǎn)歸納總結(jié)_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、名師整理 精華學(xué)問點(diǎn) 第一章 長期化及 ORM Hibernate 基本原理 一個(gè)開發(fā)源代碼的對象關(guān)系映射框架 對 JDBC 進(jìn)行了特殊輕量級(jí)的對象封裝, 簡化了 JDBC 繁瑣的編碼 將 JavaBean 對象和數(shù)據(jù)庫的表建立對應(yīng)關(guān)系 搭建項(xiàng)目框架,編寫 hibernate 配置文件,映射文件 使用 hibernate 完成增刪改查操作 1,讀取并解析配置文件 2,讀取并解析映射信息,創(chuàng)建 SessionFactory3,打開 Session4,開頭一個(gè)事務(wù)(增刪改操作必需,查詢操作可選) 5,數(shù)據(jù)庫操作 6,提交事務(wù)(回滾事務(wù)) 7,關(guān)閉 session實(shí)體對象的三種狀態(tài) 瞬時(shí)狀態(tài),長期狀

2、態(tài),游離狀態(tài) Hibernate 開發(fā)步驟: 1, 預(yù)備對象 2, 設(shè)置關(guān)系 3, 長期化操作 Session 綁定線程 第 1 頁,共 6 頁名師整理 精華學(xué)問點(diǎn) 其次章 類與類之間的關(guān)系 關(guān)聯(lián),泛化,集合,聚合 Many-to-one 關(guān)聯(lián) One-to-many 關(guān)聯(lián) 雙向一對多關(guān)聯(lián) One-to-many 和 many-to-one 的組合 Many-to-many 關(guān)聯(lián) 第 2 頁,共 6 頁名師整理 精華學(xué)問點(diǎn) 數(shù)據(jù)庫中的表分為 3 種:實(shí)體表,關(guān)系表,字典表 Cascade 和 inverse Casecade:級(jí)聯(lián),一得一方進(jìn)行的操作會(huì)影響到多的一方,即主控方進(jìn)行什么操作受 控

3、方就進(jìn)行什么操作 Inverse :反轉(zhuǎn)把握,舍棄把握權(quán),即 inverse=”false”的一方有愛護(hù)關(guān)系的權(quán)益, inverse=”true ”的一方舍棄愛護(hù)關(guān)系的權(quán)益 第三章 HQL 的優(yōu)點(diǎn): 1, 語句簡潔 2, 無需封裝 獨(dú)3, 立于數(shù)據(jù)庫 使用 HQL 的步驟 1, 得到 session2, 編寫 HQL 語句 3, 創(chuàng)建 Query 對象 4, 執(zhí)行查詢并得到返回結(jié)果 HQL 屬性查詢 得到的 list 中存的是 Object 數(shù)組 參數(shù)綁定 1, 占位符“?“ 設(shè)置值時(shí),下標(biāo)從 0 開頭 2, 命名參數(shù) :name 作為參數(shù) 3, 封裝參數(shù) 第 3 頁,共 6 頁名師整理 精華

4、學(xué)問點(diǎn) 一,創(chuàng)建查詢對象 二,動(dòng)態(tài)設(shè)置查詢語言(拼接 HQL 語句) 三,使用 setproperties()設(shè)定參數(shù)HQL 分頁查詢 setFirstResultpageNo-1*pageSize 設(shè)置首條記錄的位置 setMaxResultpageSize設(shè)置每頁最大顯示數(shù) HQL 排序查詢 HQL 常用聚合函數(shù) count :統(tǒng)計(jì)函數(shù) max 和 min :最大值和最小值函數(shù) avg 和 sum :平均值和求和函數(shù) 與 SQL 類似, HQL 通過 order by 子句實(shí)現(xiàn)對查詢結(jié)果的排序 默認(rèn)情形下按升序次序排序 排序策略( asc 升序, desc 降序 HQL 分組查詢 通過 g

5、roup by 子句實(shí)現(xiàn) 并使用 having 子句對 group by 返回的結(jié)果集進(jìn)行選擇 第四章 如何對 Hibernate 進(jìn)行性能優(yōu)化 1, 數(shù)據(jù)庫設(shè)計(jì) 2, HQL 優(yōu)化 一, 防止使用 or 操作 二, 防止使用 not 三, 防止使用 like (可以用標(biāo)簽) 四, 防止 having 子句 五, 防止使用 distinct 3, 數(shù)據(jù)加載策略 第 4 頁,共 6 頁名師整理 精華學(xué)問點(diǎn) 即時(shí)加載,推遲加載 關(guān)聯(lián)對象,關(guān)聯(lián)集合,實(shí)體對象默認(rèn)推遲加載 屬性默認(rèn)即時(shí)加載 Hibernate 的默認(rèn)配置適合于大多數(shù)情形 Get()方法不受延時(shí)加載的限制 Load()方法受推遲加載的影

6、響 4, 緩存治理 分為一級(jí)緩存和二級(jí)緩存 一級(jí)緩存時(shí) hibernate 治理的 二級(jí)緩存需要手動(dòng)配置 List 和 iterate 的區(qū)分 List 每次只發(fā)出一條查詢語句,并把查詢結(jié)果存入 sessionIterate 先查詢中意條件的 id 然后去緩存中查詢,差異的部分到數(shù)據(jù)庫中查詢 聯(lián)接查詢和聯(lián)接迫切( fetch )查詢 一般聯(lián)接查詢返回的 list 中存的是 object 數(shù)組, object 數(shù)組中的對象從左往右依次對應(yīng) 迫切查詢返回的 list 中儲(chǔ)備的是最左邊的對象(邊查詢邊封裝) 第五章 Criteria 查詢 Criteria 查詢接受面對對象方式封裝查詢條件,又稱為對

7、象查詢 對 SQL 語句進(jìn)行封裝 接受對象的方式來組合各種查詢條件 由 Hibernate 自動(dòng)產(chǎn)生 SQL 查詢語句 Criteria 由 Hibernate Session 進(jìn)行創(chuàng)建 Example 查詢適用于多條件等值查詢 常用限定查詢方法 方法 說 明 第 5 頁,共 6 頁名師整理 精華學(xué)問點(diǎn) Restrictions.eq 對應(yīng) SQL 的等于( =) Restrictions.allEqRestrictions.gtRestrictions.geRestrictions.ltRestrictions.leRestrictions.between Restrictions.like Restrictions.in Restrictions.and Restrictions.orRestrictions.not使用 Map ,使用 key/value 進(jìn)行多個(gè)相等的值 的比對 對應(yīng) SQL的大于 對應(yīng) SQL的大于等于 = 對應(yīng) SQL的小于 對應(yīng) SQL的小于等于 = 對應(yīng) SQL的 between 子句 對應(yīng) SQL 的 like 子句 對應(yīng) SQL 的 in 子句 對應(yīng) SQL 的 and對應(yīng) SQL的 or對應(yīng) SQL的 not使用 Cri

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論