Mybatis 一級快取 二級快取

2021-09-25 06:03:59 字數 678 閱讀 1591

##快取分類

###一級快取

事務範圍:快取只能被當前事務訪問。快取的生命週期

依賴於事務的生命週期當事務結束時,快取也就結束生命週期。

在此範圍下,快取的介質是記憶體。

###二級快取

程序範圍:快取被程序內的所有事務共享。這些事務有

可能是併發訪問快取,因此必須對快取採取必要的事務隔離機制。

快取的生命週期依賴於程序的生命週期,程序結束時,

快取也就結束了生命週期。程序範圍的快取可能會存放大量的資料,

所以存放的介質可以是記憶體或硬碟。

###**快取

集群範圍:在集群環境中,快取被乙個機器或者多個機器的程序共享。

快取中的資料被複製到集群環境中的每個程序節點,

程序間通過遠端通訊來保證快取中的資料的一致性,

快取中的資料通常採用物件的鬆散資料形式

mybatis支援一級快取和二級快取,在實際開發中,實際上很少使用到mybatis自帶的快取,大部分情況下,快取都是使用ehcache,memorycache、redis等等來實現快取。

##所需依賴

org.mybatis

mybatis

3.4.6

org.mybatis.caches

mybatis-ehcache

mybatis快取 一級快取,二級快取

什麼是快取 為什麼使用快取 適用於快取的資料 二級快取的使用步驟 在主配置檔案配置 name cacheenabled value ture 讓當前的操作支援快取 在對映檔案中 select 標籤中配置 在select標籤中 新增乙個屬性 userscache true 先建立出乙個sqlsessi...

Mybatis快取(一級快取 二級快取)

mybatis快取分為一級快取 二級快取。mybatis一級快取預設是開啟的 二級快取全域性開關預設也是開啟的,但需要配置cachenamespace才可生效!以mybatis plus為例 mybatis plus configuration log impl org.apache.ibatis....

mybatis一級快取 二級快取

一級快取基於sqlsession,是預設開啟的,在運算元據庫時需要構造sqlsession物件,在物件中有乙個hashmap用於儲存快取資料。不同的sqlsession之間快取資料區域是互相不影響的。一級快取的作用域是sqlsession範圍的,當在同乙個sqlsession中執行兩次相同的sql語...