mybatis將資料快取設計成兩級結構,分為一級快取、二級快取:
一級快取是session會話級別的快取,位於表示一次資料庫會話的sqlsession物件之中,又被稱之為本地快取。一級快取是mybatis內部實現的乙個特性,使用者不能配置,預設情況下自動支援的快取,使用者沒有定製它的權利(不過這也不是絕對的,可以通過開發外掛程式對它進行修改);
應用。一級快取 1.
增刪改對一緩的影響,它會自動重新整理快取,把所有快取資料清空
2.儲存的內容:key(sqlid+sql)+value (檢索的結果
)3.節點的flushcache=false,不起作用
4.只要mybatis,一級不可解除安裝,天然和
mybatis
整合二級快取
1.mybatis的自身帶的二級快取
配置過程:
1,在大配置中配置
預設為true
2,實體實現
serializable
介面3.在小配置中配置
2.增刪改對二級快取的影響
增刪改缺省會清空一級和二級快取。但是我們可以通過設定乙個屬性flushcache=
」false」 ,來阻止該操作,但是對於一級快取不起作用
3. cache的配置
evication:剔除快取物件的策略:(最常用的使用)
fifo
(先進先出)
lru(least recently use) 最近最 少使用的物件
size:快取物件的個數
flushineterval:存在的時間,單位是毫秒
readonly:唯讀
4.二級快取的關閉
1.全域性的是:在mybatis-config.xml中配置
2.區域性
設定***.xml對應的小配置給標籤配置屬性:usecache=false
hibernate快取,mybatis快取詳解
hibernate的快取有一級快取,二級快取,查詢快取。一級快取 很簡單,session級別的快取,通過get,update可以將物件放到一級快取中。二級快取 sessionfactory級別的快取,通過get,list可以將物件放到二級快取中,這裡我必須細講一下,list雖然能夠把物件放入二級快取...
mybatis快取的使用
很久沒寫關於技術方面的文章了,今天分享一下mybatis關於快取方面的技術,個人覺得還是挺好用的,主要是xml配置方面東西,廢話不多說,我們之間上正題。當時想的很簡單,以為在查詢方法的xml配置檔案配置一下usercache true 就可以了,那時候別提有多歡喜了,mybatis的快取這麼簡單,哇...
mybatis的快取機制
兩級快取 一級快取 本地快取 sqlsession級別的快取,一級快取是一直開啟的 與資料庫同一次會話期間,查詢到的資料會放在本地快取中,以後如果還需要獲取相同的資料,直接從快取中拿到。一級快取失效的幾種情況 sqlsession 不同 sqlsession相同,但查詢條件不一樣 sqlsessio...