Mybatis 兩個xml綁定同一個Mapper接口時, 二級緩存沒有正確刷新的問題!


如下圖所示: 我有兩個xml文件, 他們有着相同的 namespace (指向 IssueMapper)

 

為了啟用二級緩存, 我在 IssueMapper.xml 中添加了 <cache /> 節點 (不能在兩個xml中同時添加, 否則啟動時會報錯)

 

看一眼 Mapper接口, 只有兩個接口

 

其中 findOne() 在 IssueMapper.xml 中實現, 而 update 在 IssueMapperExt.xml 中實現

 

現在使用如下步驟調用

 

正常來說, 執行了 update 操作后, 此namespace中的二級緩存將被移除, 然而 實際update卻沒有去刷新緩存, 導致 后面的第二次查詢從二級緩存中取到了臟數據

 

此問題已提交至github, 后續詳情請跟蹤issue > https://github.com/mybatis/mybatis-3/issues/1599 (含復現用例代碼)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM