日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

10、mybatis中缓存的使用

發(fā)布時間:2023/12/3 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 10、mybatis中缓存的使用 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

對于初學者,如何進行mybatis的學習呢?我總結(jié)了幾點,會慢慢的更新出來。首先大家需要了解mybatis是什么、用mybatis來做什么、為什么要用mybatis、有什么優(yōu)缺點;當知道了為什么的時候就開始了解如何用的問題,如何使用mybatis、有幾種使用方式、各種方式的優(yōu)缺點,在這個階段也會學習mybatis涉及到的一些標簽的用法;當知道了基礎用法之后,就開始接觸一些高級的用法,例如動態(tài)sql的使用、mybatis的緩存使用等;至此,在實戰(zhàn)項目中使用mybatis進行開發(fā)已經(jīng)沒有問題了。

接下來就開始深入的研究一下mybatis這個持久層的框架,在純技術(shù)的方面進行研究,提高自己的能力。首先,大家需要了解一下mybatis的整體技術(shù)架構(gòu)和工作原理;接下來,就開始了解一下mybatis各大核心組件的具體功能及其工作原理。至此,算是對mybatis的原理簡單的了解一下了,由于博主的能力有限,因此對于mybatis的框架技術(shù)研究也就到這里算結(jié)束了。

最后會了解一些其他的東西,例如:mybatis的逆向工程使用、如何開發(fā)一個mybatis插件,在這里會介紹一下mybatis的分頁實現(xiàn)等。

至此,mybatis也算是入門了,出去就可以和別人說,你稍微了解mybatis框架,對其也多少有一點自己的理解和看法了。

目錄

1、mybatis 的緩存機制

2、一級緩存

2、1 工作機制

2、2 失效場景

3、二級緩存

3、1 工作機制

3、2 使用方式

4、與緩存設置有關(guān)的設置和屬性

5、引入第三方緩存服務


這一篇介紹一下當使用mybatis作為持久層框架時,如何使用緩存。根據(jù)不同的需求,可以使用一級緩存、二級緩存、集成第三方緩存服務。接下來詳細介紹一下:

1、mybatis 的緩存機制

在mybaits中,默認情況下,只有一級緩存也就是SqlSession級別的緩存是開啟的,也稱本地緩存;二級緩存需要手動開啟和配置才可使用,二級緩存是基于namespacce級別的緩存,mybatis定義了緩存接口cache,用戶可以通過實現(xiàn)Cache接口定義二級緩存。

2、一級緩存

2、1 工作機制

一級緩存是 SqlSession?級別的緩存,又稱本地緩存,作用范圍是一次會話,與數(shù)據(jù)庫同一次會話期間查詢到的數(shù)據(jù)會放在本地緩存中,以后需要獲取相同的數(shù)據(jù),直接在緩存中獲取。 同一次會話中如果調(diào)用兩次相同的訪問持久層的代碼,那么第二次調(diào)用的代碼會去緩存中獲取數(shù)據(jù),而不是去數(shù)據(jù)庫查詢。

2、2 失效場景

以下情況下,一級緩存會失效

1)sqlSession不同,一級緩存失效;
2)查詢語句不同;
3)兩次查詢之間進行了增刪改操作;
4)主動清空一級緩存,執(zhí)行了 sqlSession.clearCache();

3、二級緩存

3、1 工作機制

二級緩存是全局的、基于namespace級別的緩存,一個namespace對應一個二級緩存,這里的namespace就是sql映射文件中的namespace。

二級緩存使用時,mybatis會先將數(shù)據(jù)放在會話的一級緩存中,當會話關(guān)閉、提交時,一級緩存的數(shù)據(jù)會被保存到二級緩存中,如果會話不提交、不關(guān)閉,那么數(shù)據(jù)不會寫入到二級緩存中。

3、2 使用方式

1)開啟全局緩存,配置 <setting name="cacheEnabled" value="true"></setting>;
2)在sql映射文件mapper.xml中配置使用二級緩存
??<cache eviction="" flushTinterval="" readOnly="" size="" type=""></cache>

具體屬性解釋:

eviction

緩存的回收策略

LRU:最近最少使用,移除最長時間內(nèi)不被使用的對象;
FIFO:先進先出,按對象進入緩存的順序來移除它們;
SOFT:軟引用,移除基于垃圾回收器狀態(tài)和軟引用規(guī)則的對象;
WEAK:弱引用,更積極的移除基于垃圾收集器狀態(tài)和弱引用規(guī)則的對象;
默認的時LRU?

flushInterval緩存刷新間隔,緩存多長時間清空一次,默認不清空,設置一個毫秒值?
readOnly是否只讀
true:只讀;mybatis認為所有從緩存中獲取數(shù)據(jù)的操作都是只讀操作,不會修
改數(shù)據(jù),會直接將數(shù)據(jù)在緩存中的引用給調(diào)用者,不安全,速度快;
false:非只讀;mybatis會利用序列化和反序列化的技術(shù)克隆一份新的數(shù)據(jù)給調(diào)
用者,安全,速度慢;? ? ?
size緩存存放數(shù)據(jù)大小
type????????

指定自定義緩存的全類名,類實現(xiàn)Cache接口org.mybatis.caches.ehcache.EhcacheCache;

涉及到數(shù)據(jù)的bean需要實現(xiàn)序列化接口,因為緩存查詢依賴于 序列化&反序列化

4、與緩存設置有關(guān)的設置和屬性

cacheEnabled

true是開啟,false是關(guān)閉

關(guān)閉的是二級緩存,一級緩存一直開啟

useCache每個select標簽都有一個useCache="true" || “false”
<select id="getUsers" useCache="true">?
?這里的useCache關(guān)閉或者開啟的是二級緩存,和一級緩存無關(guān)
flushCache每個增刪改標簽都有flushCache="true" || "false",?當增刪改執(zhí)行之后開啟或者關(guān)閉是否清空緩存,?flushCache="true"時,一級緩存和二級緩存都會清空;
select標簽也可以設置flushCache,默認值時false,不清空緩存
sqlSession.clearCache只是清除當前會話的一級緩存
localCacheScope

本地緩存作用域,一級緩存時值為session,當前會話的所有數(shù)據(jù)保存在會話緩存中;

當取值為statement時就沒有數(shù)據(jù)緩存了,設置這個參數(shù)可以禁用掉一級緩存,一般不配置;

5、引入第三方緩存服務

可以整合的第三方緩存服務又?redisehchache等,引入的緩存服務中接口需要實現(xiàn)Cache接口。 整合的步驟: 1)導入第三方緩存包; 2)導入和第三方緩存整合的適配包; 3)mapper.xml中引用自定義緩存? <cache type="第三方實現(xiàn)Cache接口的類"></cache>。 有的時候緩存設置一次之后,其他mapper中也想使用緩存,則可以引用同一緩存,需要在其他mapper.xml中引用: <cache-ref namespace="com.czp.dao.UserMapper.xml"/> 以上就是對mybatis 中緩存的一些介紹。

總結(jié)

以上是生活随笔為你收集整理的10、mybatis中缓存的使用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 老头老太做爰xxx视频 | 国产精品久久影院 | 亚洲激情a | 综合国产视频 | 久99精品| 香蕉成视频人app下载安装 | 天天综合av | 一区二区三区麻豆 | 秋霞午夜视频 | 牛av| 日韩一区av在线 | 国产综合精品视频 | 亚洲成a人片77777kkkk | 51嘿嘿嘿国产精品伦理 | 精品久久久久久久 | 伊人久久狼人 | 在线视频自拍 | 狠狠爱五月婷婷 | 色就是色欧美色图 | 国产视频手机在线 | 日韩一级片视频 | www.色网| 亚洲二三区 | 麻豆精品免费视频 | 欧美一区,二区 | 91人妻一区二区三区蜜臀 | 日本阿v视频在线观看 | 日本十八禁视频无遮挡 | 淫视频在线观看 | 激情四射网站 | 国产片高清在线观看 | 欧美黄色激情视频 | 99在线无码精品入口 | 成人av免费网站 | 黄色网页在线看 | www.久久精品视频 | 韩国激情呻吟揉捏胸视频 | 日韩久久影视 | 麻豆69xxnxxporn | 久久精品视频观看 | 国产精品91久久久 | 亚洲天天av | 天天艹日日干 | 热久久中文| 浪漫樱花在线观看高清动漫 | 日韩激情视频网站 | 亚洲综合久久av一区二区三区 | 夜夜嗨av一区二区三区网页 | 无码aⅴ精品一区二区三区 精品久久在线 | 成人性生交视频免费观看 | 欧美日韩精品区别 | 一区二区三区免费在线观看视频 | 老头老夫妇自拍性tv | 欧美大片一区二区三区 | 久久性精品 | 天天欧美 | 日韩欧美电影一区二区三区 | 人妻无码一区二区三区免费 | 亚洲3p | 噜噜噜久久,亚洲精品国产品 | 国产精品久久精品三级 | 青草av在线 | 欧美在线一级视频 | 国产午夜精品视频 | 奇米网久久| 青青草原一区二区 | www.桃色av嫩草.com | 一级a性色生活片久久毛片 爱爱高潮视频 | va欧美| 欧美性猛交ⅹ乱大交3 | 成人精品一区二区三区在线 | 91艹| 麻豆av影视 | 少妇又紧又色 | 色大师av一区二区三区 | 喷水视频在线观看 | 欧美xxxxav| 干骚视频 | 91精品免费在线观看 | 高清日韩一区二区 | 国产手机av | 又污又黄的网站 | 欧美日韩一区二区三区不卡 | 卡一卡二视频 | 亚洲+小说+欧美+激情+另类 | 日本精品一二三区 | 欧美变态口味重另类 | 欧美肉大捧一进一出免费视频 | 午夜欧美视频 | a极毛片 | 久热最新视频 | 我爱我色成人网 | 国产高潮又爽又无遮挡又免费 | 在线观看二区 | 操你妹影院 | 国产综合在线视频 | 国产视频手机在线观看 | 午夜av网站 | 被两个男人吃奶三p爽文 |