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 (含复现用例代码)

转载于:https://www.cnblogs.com/imyjy/p/11163610.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值