




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第七章緩存及注解第三單元第1頁/共25頁本章相關(guān)學(xué)習(xí)資源《使用緩存提高查詢性能》專題《使用注解簡化映射配置》專題《升級(jí)新聞管理系統(tǒng)》相關(guān)專題《使用Hibernate升級(jí)新聞管理系統(tǒng)》第7章《緩存及注解》第2頁/共25頁學(xué)習(xí)平臺(tái)“Hibernate實(shí)現(xiàn)數(shù)據(jù)持久化”課程學(xué)生用書預(yù)習(xí)檢查簡述緩存的作用簡述Hibernate的緩存分類列舉完成實(shí)體類常用配置的注解第3頁/共25頁提問本章任務(wù)任務(wù)1:使用一級(jí)緩存查詢特定房屋信息任務(wù)2:使用二級(jí)緩存和查詢緩存任務(wù)3:使用注解配置項(xiàng)目任務(wù)4:升級(jí)新聞管理系統(tǒng)第4頁/共25頁本章目標(biāo)第5頁/共25頁使用一級(jí)緩存提高查詢性能使用二級(jí)緩存提高查詢性能使用查詢緩存調(diào)高查詢性能升級(jí)新聞管理系統(tǒng)點(diǎn)重點(diǎn)難使用注解完成項(xiàng)目配置點(diǎn)重串講:緩存緩存介于應(yīng)用程序和永久性數(shù)據(jù)存儲(chǔ)源之間使用緩存,可以降低應(yīng)用程序直接讀寫永久性數(shù)據(jù)存儲(chǔ)源的頻率,提高運(yùn)行性能第6頁/共25頁串講:Hibernate緩存Hibernate緩存分類一級(jí)緩存(Session緩存)二級(jí)緩存(SessionFactory的外置緩存)查詢緩存緩存范圍事務(wù)范圍進(jìn)程范圍集群范圍第7頁/共25頁提問講解:一級(jí)緩存一級(jí)緩存(Session緩存)減少訪問數(shù)據(jù)庫的頻率保證數(shù)據(jù)庫中記錄與緩存中對(duì)象同步第8頁/共25頁//獲得ID為1的學(xué)生信息Studentstudent=(Student)session.load(Student.class,1);System.out.println(student.getSname()+"-"+student.getSex());//在同一個(gè)Session范圍內(nèi),再次獲得ID為1的學(xué)生信息Studentstudent2=(Student)session.load(Student.class,1);System.out.println(student2.getSname()+"-"+student2.getSex());selectstudent0_.SIDasSID1_0_,student0_.SNAMEasSNAME1_0_,student0_.SEXasSEX1_0_fromSTUDENTstudent0_wherestudent0_.SID=?兩次查詢Student對(duì)象,控制臺(tái)只輸出一句SQL,說明Session緩存降低了訪問數(shù)據(jù)庫的頻率
演示示例:使用一級(jí)緩存上機(jī)練習(xí)需求說明租房系統(tǒng)中,查詢ID為1的房屋基本信息分析:在同一個(gè)Session范圍內(nèi)兩次查詢ID為1的房屋基本信息在不同Session范圍內(nèi)兩次查詢ID為1的房屋基本信息控制臺(tái)輸出SQL語句,觀察兩者區(qū)別完成時(shí)間:15分鐘共性問題集中講解第9頁/共25頁練習(xí)串講:二級(jí)緩存二級(jí)緩存(SessionFactory的外置緩存)可以被所有的Session共享是可配置的插件第10頁/共25頁緩存插件緩存實(shí)現(xiàn)類是否支持查詢緩存類型EHCacheorg.hibernate.cache.EhCacheProvider是進(jìn)程范圍的緩存;內(nèi)存或硬盤OSCacheorg.hibernate.cache.OSCacheProvider是進(jìn)程范圍的緩存;內(nèi)存或硬盤SwarmCacheorg.hibernate.cache.SwarmCacheProvider否集群范圍的緩存JBossCacheorg.hibernate.cache.TreeCacheProvider是集群范圍的緩存配置步驟
選擇合適的緩存插件,配置其自帶的配置文件串講:二級(jí)緩存第11頁/共25頁
演示示例:配置EHCache二級(jí)緩存選擇需要使用二級(jí)緩存的持久化類,設(shè)置它的二級(jí)緩存的并發(fā)訪問策略12串講:二級(jí)緩存應(yīng)用場(chǎng)景第12頁/共25頁適用場(chǎng)景不適用場(chǎng)景很少被修改的數(shù)據(jù)經(jīng)常被修改的數(shù)據(jù)不是很重要的數(shù)據(jù),允許出現(xiàn)偶爾并發(fā)問題財(cái)務(wù)數(shù)據(jù),絕對(duì)不允許出現(xiàn)并發(fā)問題不會(huì)被并發(fā)訪問的數(shù)據(jù)與其他應(yīng)用共享的數(shù)據(jù)應(yīng)用參考的常量數(shù)據(jù)串講:查詢緩存Hibernate的二級(jí)緩存策略,是針對(duì)于ID查詢的緩存策略,對(duì)于條件查詢則毫無作用第13頁/共25頁為此,Hibernate提供了針對(duì)條件查詢的查詢緩存提問串講:查詢緩存配置步驟第14頁/共25頁
演示示例:配置查詢緩存
開啟查詢緩存
hibernate.cache.use_query_cache1在程序中手動(dòng)啟用查詢緩存query.setCacheable(true);2上機(jī)練習(xí)需求說明租房系統(tǒng)中,分別使用二級(jí)緩存以及查詢緩存查詢ID為1的房屋基本信息完成時(shí)間:20分鐘共性問題集中講解第15頁/共25頁練習(xí)小結(jié)第16頁/共25頁//獲得ID為1的學(xué)生信息Studentstudent=(Student)session.load(Student.class,1);System.out.println(student.getSname()+"-"+student.getSex());//在同一個(gè)Session范圍內(nèi),再次獲得ID為1的學(xué)生信息Studentstudent2=(Student)session.load(Student.class,1);System.out.println(student2.getSname()+"-"+student2.getSex());S提問簡述Hibernate的緩存分類以下為在同一個(gè)Session范圍內(nèi)查詢ID為1的學(xué)生信息的代碼,解釋控制臺(tái)輸出一條SQL語句的原因使用AnnotationConfiguration建立會(huì)話工廠串講:注解替換復(fù)雜的hbm.xml文件簡化Hibernate程序開發(fā)使用注解步驟第17頁/共25頁1添加Annotationsjar包2使用注解配置持久化類以及對(duì)象關(guān)聯(lián)關(guān)系34在Hibernate配置文件(hibernate.cfg.xml)中聲明持久化類講解:注解配置實(shí)體類第18頁/共25頁注解含義和作用@Entity將一個(gè)類聲明為一個(gè)實(shí)體bean(即一個(gè)持久化POJO類)@Id聲明了該實(shí)體bean的標(biāo)識(shí)屬性(相當(dāng)于數(shù)據(jù)表的主鍵)@GeneratedValue定義標(biāo)識(shí)符的生成策略@Table為實(shí)體bean映射指定表(table)、目錄(catalog)和schema的名字。默認(rèn)值:實(shí)體bean的類名,不帶包名@UniqueConstraint定義表的唯一約束@Lob表示屬性將被持久化為Blob或者Clob類型@Column將屬性映射到列@Transient將忽略這些字段和屬性,不用持久化到數(shù)據(jù)庫@NamedQuery配置命名查詢講解:注解配置對(duì)象關(guān)聯(lián)關(guān)系第19頁/共25頁注解含義和作用@OneToOne建立實(shí)體bean之間的一對(duì)一關(guān)聯(lián)@OneToMany建立實(shí)體bean之間的一對(duì)多關(guān)聯(lián)@ManyToOne建立實(shí)體bean之間的多對(duì)一關(guān)聯(lián)@ManyToMany建立實(shí)體bean之間的多對(duì)多關(guān)聯(lián)
演示示例:使用注解配置項(xiàng)目上機(jī)練習(xí)需求說明租房系統(tǒng)中,使用注解配置項(xiàng)目,實(shí)現(xiàn)如下功能:查詢某個(gè)區(qū)的所有街道查詢特定的街道信息分析:使用注解配置實(shí)體類以及對(duì)象關(guān)聯(lián)關(guān)系使用注解配置命名查詢完成時(shí)間:20分鐘共性問題集中講解第20頁/共25頁練習(xí)修改/刪除新聞信息串講:升級(jí)新聞管理系統(tǒng)第21頁/共25頁參考功能分頁查詢新聞信息查詢新聞信息詳情發(fā)布新聞信息答疑時(shí)間同學(xué)們請(qǐng)就以下方面的問題請(qǐng)教老師項(xiàng)目答疑(教員備課時(shí)自行填寫)第22頁/共25頁總結(jié)Hibernate一級(jí)緩存有什么作用?Hibernate二級(jí)緩存在哪些場(chǎng)景下適用?使用Hibernate注解的步驟有哪些?什么注解可以定義標(biāo)識(shí)符的生成策略?第23頁/共25頁提
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 屋面防水勞務(wù)分包合同
- 文化創(chuàng)意產(chǎn)業(yè)發(fā)展項(xiàng)目投資合同書
- 運(yùn)輸承包合同書
- 吸糞車租賃合同
- 買賣中介居間合同
- 民宿預(yù)訂合同
- 鉆機(jī)承包合同
- 武漢工程大學(xué)郵電與信息工程學(xué)院《運(yùn)動(dòng)康復(fù)治療技術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 昆明衛(wèi)生職業(yè)學(xué)院《JavaWeb框架應(yīng)用開發(fā)實(shí)驗(yàn)》2023-2024學(xué)年第二學(xué)期期末試卷
- 永州師范高等??茖W(xué)?!毒植拷馄蕦W(xué)1》2023-2024學(xué)年第二學(xué)期期末試卷
- 出租共享菜園合同范例
- 八年級(jí)班主任學(xué)生心理健康計(jì)劃
- 整體施工勞務(wù)服務(wù)方案
- 傳統(tǒng)節(jié)日端午節(jié)模板37
- 2025年泰山職業(yè)技術(shù)學(xué)院高職單招職業(yè)適應(yīng)性測(cè)試近5年??及鎱⒖碱}庫含答案解析
- 2025春季開學(xué)第一次全體教師會(huì)上校長講話稿
- 2025年三方買賣協(xié)議標(biāo)準(zhǔn)版本(2篇)
- 【歷史】唐朝建立與“貞觀之治”課件-2024~2025學(xué)年統(tǒng)編版七年級(jí)歷史下冊(cè)
- 《小腦梗死護(hù)理查房》課件
- 江西專業(yè)紅娘培訓(xùn)課件
- 接地系統(tǒng)安裝施工方案
評(píng)論
0/150
提交評(píng)論