第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

Hibernate緩存策略

難度中級(jí)
時(shí)長(zhǎng)34分
學(xué)習(xí)人數(shù)
綜合評(píng)分9.63
124人評(píng)價(jià) 查看評(píng)價(jià)
9.7 內(nèi)容實(shí)用
9.6 簡(jiǎn)潔易懂
9.6 邏輯清晰
  • 一級(jí),二級(jí)緩存的對(duì)比
    查看全部
  • 二級(jí)緩存使用場(chǎng)景
    查看全部
  • 二級(jí)緩存的介紹: 1.二級(jí)緩存又稱為“全局緩存”,“應(yīng)用級(jí)緩存” 2.二級(jí)緩存中的數(shù)據(jù)可適用方位是當(dāng)前應(yīng)用的所有會(huì)話,不會(huì)雖然某一個(gè)session會(huì)話的關(guān)閉而關(guān)閉,而是隨著整個(gè)sessionFactory的關(guān)閉而關(guān)閉 3.二級(jí)緩存是可插拔式緩存,默認(rèn)是EHCache,還支持其他二級(jí)緩存組件 二級(jí)緩存的適用場(chǎng)景: 1.很少被修改的數(shù)據(jù) 2.不是很重要的數(shù)據(jù),允許出現(xiàn)偶爾并發(fā)的數(shù)據(jù) 3.不會(huì)被并發(fā)訪問的數(shù)據(jù) 4.參考數(shù)據(jù) 一二級(jí)緩存的對(duì)比: 如圖 總結(jié): 1.Hibernate的緩存能提高檢索效率 2.Hibernate的緩存分為一級(jí)緩存和二級(jí)緩存,一級(jí)緩存是會(huì)話級(jí)緩存,二級(jí)緩存是應(yīng)用級(jí)緩存 3.Hibernate的緩存在提高檢索的同時(shí),也會(huì)增加服務(wù)器的消耗,所以要注意緩存的使用策略。
    查看全部
  • cache標(biāo)簽的屬性
    查看全部
  • cache標(biāo)簽的屬性: usage屬性(必備):表示事務(wù)模式,總共提供了4種:read-only、transactional、read-write、nonstrict-read-write include屬性:有兩個(gè)值,分別是all(全緩存)與non-lazy(不對(duì)該實(shí)體進(jìn)行懶加載的屬性進(jìn)行緩存). region屬性:該屬性值可以隨意命名,作用是在ehcache.xml配置文件中引用region屬性的值指定為該實(shí)體配置緩存策略. ehcache.xml配置文件中存在一個(gè)<defaultCache>標(biāo)簽對(duì),該標(biāo)簽是默認(rèn)的緩存策略. <defaultCache maxElementsInMemory="10000" eternal="false" timeToIdleSeconds="120" timeToLiveSeconds="1200" overflowToDisk="true" /> maxElementsInMemory屬性:表示緩存中允許創(chuàng)建的最大對(duì)象數(shù). eternal屬性:表示緩存中的對(duì)象是否為永久的. timeToIdleSeconds屬性:表示緩存數(shù)據(jù)鈍化時(shí)間,即對(duì)象在它過期前的空閑時(shí)間(重啟服務(wù)器會(huì)鈍化). timeToLiveSeconds屬性:表示緩存數(shù)據(jù)生存時(shí)間. overflowToDisk屬性:表示溢出之后是否存儲(chǔ)在硬盤上. 配置文件的<cache>標(biāo)簽的name屬性值與實(shí)體類的region屬性值對(duì)應(yīng).
    查看全部
  • Hibernate二級(jí)緩存 二級(jí)緩存的生命周期是SessionFactory,當(dāng)SessionFactory關(guān)閉時(shí),緩存才會(huì)清空. 二級(jí)緩存是每個(gè)session共用的緩存,并不是默認(rèn)開啟的,需要手動(dòng)去配置. 配置二級(jí)緩存的步驟: 1.添加二級(jí)緩存對(duì)應(yīng)的jar包. jar包:commons-logging-1.1.3.jar、ehcache.jar 2.在Hibernate的配置文件中添加Provider類的描述(即添加二級(jí)緩存接口對(duì)應(yīng)外部的實(shí)現(xiàn)類). <property name="cache.provider_class">net.sf.ehcache.hibernate.EhCacheProvider</property> 3.添加二級(jí)緩存的屬性配置文件,直接放在src根目錄即可. ehcache.xml 4.在需要被緩存的表所對(duì)應(yīng)的映射文件中添加<cache/>標(biāo)簽. 在<class>標(biāo)簽下添加<cache usage="read-only"/> 雖然已經(jīng)給Hibernate添加二級(jí)緩存,但是實(shí)體類并不是默認(rèn)開啟二級(jí)緩存的,因此需要在被緩存的表所對(duì)應(yīng)的映射文件中添加<cache/>標(biāo)簽指明進(jìn)行開啟.
    查看全部
  • 二級(jí)緩存的配置步驟: 添加二級(jí)緩存對(duì)應(yīng)的jar包:ehcache.jar commons-logging-1.1.3.jar 在Hibernate的配置文件中添加Provider類的描述,,如下: <!--指定二級(jí)緩存的外部實(shí)現(xiàn)類--> <property name="cache.provider_class">net.sf.ehcache.hibernate.EhCacheProvider</property> 添加二級(jí)緩存的屬性配置文件: ehcache.xml 在需要被緩存的表所對(duì)應(yīng)的映射文件中添加<cache/>標(biāo)簽,如下 <!--開啟二級(jí)緩存--> <cache usage="read-only"/>
    查看全部
  • 一級(jí)緩存注意問題: 1.query.list()是不會(huì)使用一級(jí)緩存的。 2.【推薦】query.iterate()會(huì)使用一級(jí)緩存,當(dāng)緩存中有數(shù)據(jù)的時(shí)候,query.iterate()將所有對(duì)象的id查詢出來然后到緩存中將所有對(duì)象都查詢出來,如果緩存中沒有數(shù)據(jù),query.iterate()則把對(duì)象從數(shù)據(jù)庫中一條一條的將數(shù)據(jù)查出來。 一級(jí)緩存有時(shí)候也會(huì)對(duì)程序的性能產(chǎn)生影響. 因?yàn)樵趯?duì)數(shù)據(jù)進(jìn)行增刪改操作時(shí),同樣需要更新緩存中的數(shù)據(jù). 即本來保存在緩存中的對(duì)象,當(dāng)被更新后,同一個(gè)session再次訪問被更新后的對(duì)象時(shí),就會(huì)重新發(fā)送sql語句獲取對(duì)象. 但總體上還是提升了查詢效率. 使用Query接口的list方法進(jìn)行查詢數(shù)據(jù)時(shí),不會(huì)使用到緩存. 即同一Query接口使用多次list方法對(duì)同一實(shí)體進(jìn)行查詢時(shí),會(huì)發(fā)送多次sql語句.但緩存中一樣會(huì)保留查詢的數(shù)據(jù),只是list方法不會(huì)去緩存中查找數(shù)據(jù). Hibernate的Query接口還提供使用Iterator迭代器進(jìn)行查詢. 使用Query接口的iterator()方法返回包含該結(jié)果集的Iterator實(shí)例. 然后使用Iterator的hasNext()方法判斷是否還存在待遍歷對(duì)象. 使用Iterator的next()方法獲取當(dāng)前遍歷的對(duì)象. Query query=session.createQuery("from Employee"); Iterator iterator=query.iterator(); while(iterator.hasNext()){ Employee emp=(Employee)iterator.next(); } 使用Iterator迭代器進(jìn)行查詢時(shí),會(huì)使用緩存. Iterator使用緩存步驟: 首先從數(shù)據(jù)庫查詢目標(biāo)對(duì)象的id字段,然后根據(jù)id字段到緩存中查找數(shù)據(jù),若緩存中存在該數(shù)據(jù),則直接從緩存獲取,否則重新發(fā)送完整sql語句到數(shù)據(jù)庫中獲取數(shù)據(jù).
    查看全部
  • Hibernate一級(jí)緩存的API
    查看全部
  • 一、介紹一級(jí)緩存: 1.Hibernate一級(jí)緩存又稱為"Session緩存","會(huì)話級(jí)緩存" 2.通過Session從數(shù)據(jù)庫查詢實(shí)體時(shí)把實(shí)體在內(nèi)存中存儲(chǔ)起來,下一次查詢同一實(shí)體時(shí)不再?gòu)臄?shù)據(jù)庫獲取,而是從內(nèi)存中獲取,這就是緩存 3.一級(jí)緩存的生命周期和Session相同;Session銷毀,他也銷毀 4.一級(jí)緩存中的數(shù)據(jù)可適用范圍在當(dāng)前會(huì)話之內(nèi) 二、Hibernate一級(jí)緩存API: 一級(jí)緩存是Hibernate的默認(rèn)緩存,無法取消,用兩個(gè)方法管理: 1、evict():用于將某個(gè)對(duì)象從Session的一級(jí)緩存中清除。 2、clear():用于將一級(jí)緩存中的所有對(duì)象全部清除。
    查看全部
  • Hibernate的緩存與session有關(guān)
    查看全部
  • Hibernate緩存: 1.Hibernate緩存與session相關(guān),同一個(gè)session第二次訪問同一個(gè)對(duì)象將使用緩存 2.在不同的session中多次查詢同一個(gè)對(duì)象時(shí),會(huì)執(zhí)行多次數(shù)據(jù)庫查詢 3.在一級(jí)緩存當(dāng)中,持久化類的每個(gè)實(shí)例都具有唯一的OID,也就是說同一個(gè)session兩次查詢同一個(gè)對(duì)象時(shí),第二次是不會(huì)再將對(duì)象保存在緩存當(dāng)中的
    查看全部
  • 緩存的工作原理
    查看全部
  • 為什么使用緩存?
    查看全部
  • 這里說的緩存并不是指計(jì)算機(jī)的內(nèi)存或者CPU的一二級(jí)緩存。 緩存是指為了降低應(yīng)用程序?qū)ξ锢頂?shù)據(jù)源訪問的頻次,從而提高應(yīng)用程序的運(yùn)行性能的一種策略。
    查看全部

舉報(bào)

0/150
提交
取消
課程須知
學(xué)習(xí)本門課程之前,建議先了解一下以下知識(shí),會(huì)更有助于理解和掌握本門課程: 1、掌握ORM框架的基礎(chǔ)知識(shí) 2、能使用Hibernate對(duì)Mysql數(shù)據(jù)庫進(jìn)行簡(jiǎn)單操作
老師告訴你能學(xué)到什么?
1、ORM框架中緩存的基本工作原理 2、Hibernate中緩存的分類和使用 3、掌握使用緩存針對(duì)項(xiàng)目進(jìn)行性能優(yōu)化的原則

微信掃碼,參與3人拼團(tuán)

微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

友情提示:

您好,此課程屬于遷移課程,您已購(gòu)買該課程,無需重復(fù)購(gòu)買,感謝您對(duì)慕課網(wǎng)的支持!