1,mybatis中配置xml中:
<!-- 缓存开启 -->
<setting name="cacheEnabled" value="true" />
<!-- 懒加载关闭,防止缓存脏数据 -->
<setting name="lazyLoadingEnabled" value="false" />
<!-- 默认为true。当设置为true时,懒加载的对象可能被任何懒属性全部加载;否则,每个属性按需加载。 -->
<setting name="aggressiveLazyLoading" value="true" />
2,mapper.xml
<cache eviction="LRU" type="xxx.xxx..RedisCacheUtil" />
eviction类型:
1. LRU – 最近最少使用的:移除最长时间不被使用的对象。
2. FIFO – 先进先出:按对象进入缓存的顺序来移除它们。
3. SOFT – 软引用:移除基于垃圾回收器状态和软引用规则的对象。
4. WEAK – 弱引用:更积极地移除基于垃圾收集器状态和弱引用规则的对象。
当前查询需缓存设计:
useCache="true"
二级缓存使用注意:
1,在同一namespace下
2,最好是单表操作