立即学习:https://edu.csdn.net/course/play/26014/320665?utm_source=blogtoedu
为什么mybatis 与spring整合 一级缓存失效?
如果单独使用mybatis,则sqlsession 我们可以自己管理,与spring 整合时把 mybatis 的sqlsession 屏蔽封装了,但每次查询时都会开启和关闭,
mybatis的二级缓存有哪些坑?
缓存是基于命名空间作为key(其实就mapper的包路径),当查询同一条sql时,第一次会将结果缓存起来,当其他mapper接口修改到这个表的某一个字段时,缓存并不会刷新,所以我们再一次查询时,结果还是上一次的数据。并没有没发生改变(数据一致性的问题)。所以开启二级缓存要慎重,除非此表只有一处地方进行操,没任何地方进行此表。