mybatis 缓存

关于mybatis中的缓存

mybatis中默认sqlsession缓存开启
同一个sqlsession队象 调用同一个select时 只有第一次访问数据库 第一次之后把查询结果缓存到sqlsession缓存区中, 缓存的是statement队象, 一个<select>对应一个statement队象
sqlsessionfactory缓存(二级缓存)同一个factory中那个sqlsession缓存中都可以获取

流程

  1. 去缓存区中查找是否存在statement对象
  2. 返回结果
  3. 不存在,就去查询数据库
  4. 数据库返回查询结果
  5. 把查询结果放入缓存中
    mybatis 缓存