一,缓存
对于mybatis的缓存,需要先开启mybatis缓存的总开关,在configuration.xml中的<settings>里面设置cacheEnabled 为 true (默认为true)
<!-- 默认是在src目录下 -->
<settings>
<setting name="cacheEnabled" value="true" />
<!-- lazyLoadingEnabled:true使用延迟加载,false禁用延迟加载。默认为true; aggressiveLazyLoading:true启用时,当延迟加载开启时访问对象中一个懒对象属性时,
将完全加载这个对象的所有懒对象属性。 false,当延迟加载时,按需加载对象属性(即访问对象中一个懒对象属性,不会加载对象中其他的懒对象属性)。
默认为true -->
<setting name="lazyLoadingEnabled" value="true" />
<setting name="aggressiveLazyLoading" value="false" />
</settings>
这样,mybatis会对每个mapper.xml中的查询进行缓存,对于增删改后会刷新缓存,但是实际开发中,我们并不需要对于每个查询或者增删改进行缓存,那么可以在
<select >的标签中的useCache="true"来设置需不需要进行缓存
<insert> , <update>,<delete>中的 flushCache="true" 来设置需不需要刷新缓存