JAVA_EE_Mybatis緩存

一、緩存存在的意義:
讓應(yīng)用程序減少對數(shù)據(jù)庫的訪問,提升程序運(yùn)行效率
  • MyBatis 中默認(rèn) SqlSession 緩存開啟
  • 同一個(gè) SqlSession 對象調(diào)用同一個(gè)<select>時(shí),只有第一次訪問數(shù)據(jù)庫,第一次之后把查詢結(jié)果緩存到 SqlSession 緩存區(qū)(內(nèi)存)中
  • 緩存的是 statement 對象.(簡單記憶必須是用一個(gè)<select>)
    在 myabtis 時(shí)一個(gè)<select>對應(yīng)一個(gè) statement 對象
    有效范圍必須是同一個(gè) SqlSession 對象
二适秩、緩存流程
  1. 步驟一: 先去緩存區(qū)中找是否存在 statement
  2. 步驟二:返回結(jié)果
  3. 步驟三:如果沒有緩存 statement 對象,去數(shù)據(jù)庫獲取數(shù)據(jù)
  4. 步驟四:數(shù)據(jù)庫返回查詢結(jié)果
  5. 步驟五:把查詢結(jié)果放到對應(yīng)的緩存區(qū)中



三揪阿、SqlSessionFactory 緩存
  • 又叫:二級緩存
  • 有效范圍:同一個(gè) factory 內(nèi)哪個(gè) SqlSession 都可以獲取
  • 什么時(shí)候使用二級緩存:
    當(dāng)數(shù)據(jù)頻繁被使用,很少被修改
使用二級緩存步驟
  1. 在 mapper.xml 中添加
    <cache readOnly="true"></cache>
  2. 如果不寫 readOnly=”true”需要把實(shí)體類序列化
  3. 當(dāng) SqlSession 對象 close()時(shí)或 commit()時(shí)會(huì)把 SqlSession 緩存
    的數(shù)據(jù)刷(flush)到 SqlSessionFactory 緩存區(qū)中
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市越妈,隨后出現(xiàn)的幾起案子檩赢,更是在濱河造成了極大的恐慌闪盔,老刑警劉巖结序,帶你破解...
    沈念sama閱讀 217,185評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件障斋,死亡現(xiàn)場離奇詭異,居然都是意外死亡徐鹤,警方通過查閱死者的電腦和手機(jī)垃环,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,652評論 3 393
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來凳干,“玉大人晴裹,你說我怎么就攤上這事被济【却停” “怎么了?”我有些...
    開封第一講書人閱讀 163,524評論 0 353
  • 文/不壞的土叔 我叫張陵只磷,是天一觀的道長经磅。 經(jīng)常有香客問我,道長钮追,這世上最難降的妖魔是什么预厌? 我笑而不...
    開封第一講書人閱讀 58,339評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮元媚,結(jié)果婚禮上轧叽,老公的妹妹穿的比我還像新娘。我一直安慰自己刊棕,他們只是感情好炭晒,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,387評論 6 391
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著甥角,像睡著了一般网严。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上嗤无,一...
    開封第一講書人閱讀 51,287評論 1 301
  • 那天震束,我揣著相機(jī)與錄音,去河邊找鬼当犯。 笑死垢村,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的嚎卫。 我是一名探鬼主播嘉栓,決...
    沈念sama閱讀 40,130評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了胸懈?” 一聲冷哼從身側(cè)響起担扑,我...
    開封第一講書人閱讀 38,985評論 0 275
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎趣钱,沒想到半個(gè)月后涌献,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,420評論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡首有,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,617評論 3 334
  • 正文 我和宋清朗相戀三年燕垃,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片井联。...
    茶點(diǎn)故事閱讀 39,779評論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡卜壕,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出烙常,到底是詐尸還是另有隱情轴捎,我是刑警寧澤,帶...
    沈念sama閱讀 35,477評論 5 345
  • 正文 年R本政府宣布蚕脏,位于F島的核電站侦副,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏驼鞭。R本人自食惡果不足惜秦驯,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,088評論 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望挣棕。 院中可真熱鬧译隘,春花似錦、人聲如沸洛心。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,716評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽皂甘。三九已至玻驻,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間偿枕,已是汗流浹背璧瞬。 一陣腳步聲響...
    開封第一講書人閱讀 32,857評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留渐夸,地道東北人嗤锉。 一個(gè)月前我還...
    沈念sama閱讀 47,876評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像墓塌,于是被迫代替她去往敵國和親瘟忱。 傳聞我的和親對象是個(gè)殘疾皇子奥额,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,700評論 2 354

推薦閱讀更多精彩內(nèi)容

  • 前言 主題是Mybatis一級和二級緩存的應(yīng)用及源碼分析。希望在本場chat結(jié)束后访诱,能夠幫助讀者朋友明白以下三點(diǎn)垫挨。...
    余平的余_余平的平閱讀 1,327評論 0 12
  • 1. 簡介 1.1 什么是 MyBatis ? MyBatis 是支持定制化 SQL触菜、存儲(chǔ)過程以及高級映射的優(yōu)秀的...
    笨鳥慢飛閱讀 5,519評論 0 4
  • 一級緩存 MyBatis 包含了一個(gè)非常強(qiáng)大的查詢緩存特性,它可以非常方便地配置和定制九榔。MyBatis 3 中的緩...
    端碗吹水閱讀 387評論 0 3
  • 之前在spring mvc + mybatis項(xiàng)目中對mybatis的使用有了一定的掌握,但對于其內(nèi)部的具體實(shí)現(xiàn)并...
    天羽天閱讀 1,086評論 0 0
  • 今天是他住院的第一天涡相,是的他可能是真的病了哲泊,百鬼夜行或是橫尸遍野持續(xù)了一個(gè)月,他算是來到了一座所謂的象牙塔催蝗。...
    Sickos閱讀 197評論 0 3