新聞中心
一、一級緩存
1、在?個sqlSession中,對User表根據(jù)id進行兩次查詢,查看他們發(fā)出sql語句的情況。

為泰寧等地區(qū)用戶提供了全套網(wǎng)頁設計制作服務,及泰寧網(wǎng)站建設行業(yè)解決方案。主營業(yè)務為網(wǎng)站建設、成都網(wǎng)站制作、泰寧網(wǎng)站設計,以傳統(tǒng)方式定制建設網(wǎng)站,并提供域名空間備案等一條龍服務,秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!
2、同樣是對user表進?兩次查詢,只不過兩次查詢之間進?了?次update操作。
3、總結
(1)第?次發(fā)起查詢?戶id為1的?戶信息,先去找緩存中是否有id為1的?戶信息,如果沒有,從數(shù)據(jù)庫查詢?戶信息。得到?戶信息,將?戶信息存儲到?級緩存中。
(2)如果中間sqlSession去執(zhí)?commit操作(執(zhí)?插?、更新、刪除),則會清空SqlSession中的?級緩存,這樣做的目的為了讓緩存中存儲的是最新的信息,避免臟讀。
(3)第?次發(fā)起查詢用戶id為1的?戶信息,先去找緩存中是否有id為1的?戶信息,緩存中有,直接從緩存中獲取用戶信息
二、?級緩存
?級緩存的原理和?級緩存原理一樣,第?次查詢,會將數(shù)據(jù)放?緩存中,然后第?次查詢則會直接去緩存中取。
但是?級緩存是基于sqlSession的,??級緩存是基于mapper?件的namespace的,也就
是說多個sqlSession可以共享?個mapper中的?級緩存區(qū)域,并且如果兩個mapper的namespace相同,即使是兩個mapper,那么這兩個mapper中執(zhí)?sql查詢到的數(shù)據(jù)也將存在相同的?級緩存區(qū)域中。
新聞標題:MyBatis:MyBatis一二級緩存,你學會了嗎?
當前地址:http://www.dlmjj.cn/article/djecesd.html


咨詢
建站咨詢
