标签:基础 开启 pre sel 顺序 tor 缓存 不同的 XML
是PerpetualCache.java(这个是基于SqlSession的一级缓存的)
:BlockIngCache.java,其中的成员变量Cache,就是为了增强PerpetualCache对象的;
默认是开启的。要是需要关闭的话。需要配置 <select id="selectUserPosition1" flushCache="true">
一级缓存存在于Sqlsession生命周期,是线程独享的(若Sqlsession关闭了,缓存也就失效了)
任何的DDL语句,都会是缓存清除,
一级缓存查询出来的对象,是同一个对象
如果一级缓存配置的是失效的话,二级缓存也是会查询数据库的;
二级缓存是存在于SqlSessionFactory中的,可以理解为是跨越Sqlsession 的,是以namespace为单位的,不同的namespace互不影响;
缓存在settings中是默认开启的cacheEnable = true,
还需要在mapper.xml里面配置<cache>节点信息
Mybatis中的缓存,不用string,而是用CacheKey,是因为影响缓存的因素很多:
标签:基础 开启 pre sel 顺序 tor 缓存 不同的 XML
原文地址:https://www.cnblogs.com/lys-lyy/p/11505607.html