第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

mapper二級(jí)緩存和分頁插件的問題

mapper層二級(jí)緩存和分頁里多租戶解析器的問題,

A租戶第一次執(zhí)行了一個(gè)語句,還沒有緩存,通過分頁插件動(dòng)態(tài)加了租戶條件,取出并緩存了數(shù)據(jù)Adata,但是緩存的key是不帶租戶條件的。

B租戶執(zhí)行了和A租戶相同的語句,命中了Adata的緩存(緩存key同樣不帶租戶條件),直接取出了Adata的數(shù)據(jù),導(dǎo)致數(shù)據(jù)不對(duì)

講道理的話,A和B如果都是先經(jīng)過分頁插件加上了租戶過濾條件,再判斷緩存的話,就不會(huì)命中錯(cuò)誤的緩存。

二級(jí)緩存也和分頁查詢總數(shù)有沖突,列表查詢的時(shí)候,命中的緩存,就不會(huì)再去查詢總數(shù),導(dǎo)致返回的total是0

不知道是否是使用方式不對(duì),如何解決,查很久的資料了,求指導(dǎo)一下

正在回答

3 回答

如果你可以考慮關(guān)閉mapper層二級(jí)緩存,將緩存放到service層的話。那么修改后再試試,看是否依然還存在問題,如果還有問題,可以再反饋給我。

1 回復(fù) 有任何疑惑可以回復(fù)我~
#1

慕仙7039684 提問者

首先感謝回復(fù)。 系統(tǒng)并沒有較復(fù)雜的數(shù)據(jù)需要處理,一般返回的結(jié)果就是mapper層直接出來的結(jié)果,所以想用mapper二級(jí)緩存比較方便。 翻遍個(gè)官方文檔,只找到了如下說明:“我們建議緩存放到 service 層,你可以自定義自己的 BaseServiceImpl 重寫注解父類方法,繼承自己的實(shí)現(xiàn)。 當(dāng)然如果你是一個(gè)極端分子,請(qǐng)使用 CachePaginationInterceptor 替換默認(rèn)分頁,這樣支持分頁緩存。”;
2019-08-27 回復(fù) 有任何疑惑可以回復(fù)我~
#2

慕仙7039684 提問者

但是,在3點(diǎn)多的版本里,已經(jīng)沒有CachePaginationInterceptor這個(gè)插件了(雖然3點(diǎn)多的使用文檔還是這么寫的),查找了更新日志,也沒找到CachePaginationInterceptor變動(dòng)的說明,實(shí)在沒招,確實(shí)要使用mapper二級(jí)緩存的話,能解決嗎
2019-08-27 回復(fù) 有任何疑惑可以回復(fù)我~
#3

老猿 回復(fù) 慕仙7039684 提問者

我也查看了官方文檔,在MP3.x中沒有找到CachePaginationInterceptor,目前我也解決不了這個(gè)問題。你如果著急,可以在github上的MP項(xiàng)目中提交issue,描述清楚你所遇到的問題,相信官方會(huì)答復(fù)的。我這邊最近工作比較忙,如果你不著急,過些日子,我照著你說的看能否復(fù)現(xiàn)問題,然后由我向MP官方反饋。
2019-08-28 回復(fù) 有任何疑惑可以回復(fù)我~
#4

慕仙7039684 提問者 回復(fù) 老猿

不著急,目前暫時(shí)使用AOP在mapper層方法執(zhí)行之前,對(duì)租戶字段的值進(jìn)行設(shè)置,可以滿足使用,但感覺不太合適。您這邊有空的時(shí)候,還請(qǐng)幫忙測(cè)試并反饋一下
2019-09-06 回復(fù) 有任何疑惑可以回復(fù)我~
#5

老猿 回復(fù) 慕仙7039684 提問者

你好,你說的這個(gè)問題,我沒復(fù)現(xiàn)出來,我在mapper接口的xml文件中加入<cache></cache>開啟二級(jí)緩存。我在yml中也設(shè)置了cache-enabled: true。用非分頁查詢和查詢,模擬兩個(gè)租戶的信息都正常,分頁查詢?nèi)〉玫目傆涗洈?shù)也正常,我使用的mp版本是3.1.2。你那邊是怎么設(shè)置的,要方便的話,你提供給我源代碼或者貼出部分源代碼。
2019-09-23 回復(fù) 有任何疑惑可以回復(fù)我~
#6

老猿 回復(fù) 慕仙7039684 提問者

你說的問題我用mp自帶的方法沒有復(fù)現(xiàn)出來,用自定義的方法復(fù)現(xiàn)出來了,并且提了issue,6樓和7樓就是issues的地址,不知道為啥網(wǎng)站把我的話截?cái)嗔耍伙@示出鏈接后的字,所以發(fā)了兩遍。
2019-09-23 回復(fù) 有任何疑惑可以回復(fù)我~
#7

慕仙7039684 提問者 回復(fù) 老猿

最近比較忙,忘了這茬,現(xiàn)在抽空上來學(xué)習(xí)才看到您的回復(fù),抱歉。 在您提交的issue里,看到了另一個(gè)人貼的issue鏈接和青苗的回復(fù),看似已經(jīng)修復(fù)了這個(gè)問題。 非常感謝您的反饋
2019-10-29 回復(fù) 有任何疑惑可以回復(fù)我~
#8

老猿 回復(fù) 慕仙7039684 提問者

呵呵,沒有關(guān)系,不用抱歉,青苗是MP所屬開發(fā)組織的負(fù)責(zé)人,我想下一版本應(yīng)該能解決這個(gè)問題。
2019-11-01 回復(fù) 有任何疑惑可以回復(fù)我~
查看7條回復(fù)

MP的作者建議緩存放到 service 層,你可以自定義自己的 BaseServiceImpl 重寫注解父類方法,繼承自己的實(shí)現(xiàn)。

0 回復(fù) 有任何疑惑可以回復(fù)我~

哥, 這個(gè)問題怎么解決啊

0 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消

mapper二級(jí)緩存和分頁插件的問題

我要回答 關(guān)注問題
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)