缓存
概念:
内存中的一块存储空间,服务于某个应用程序,指将频繁读取的数据临时存储在内存中,便于二次访问.
无缓存:
用户在访问数据库时,需要发起多次对数据库的直接访问,导致产生大量的IO.读写硬盘的操作,效率低下
有缓存:
首次访问时,访问数据库,将数据存储到缓存中,再次访问时,直接访问缓存,减少IO 和 硬盘的读写,提高效率
一级缓存
SqlSession级别的缓存,同一个SqlSession发起的多次同结构查询,会将数据保存在一级缓存中
注意: 无需任何配置,默认开启一级缓存
二级缓存
SqlSessionFactory级别的缓存 ,同一个SqlSessionFactory构建的SqlSession发起的多次同构查询,会将数据保存在二级缓存中
注意: 在 SqlSession.commit() 或 SqlSession.close() 提交后生效
开启全局缓存
缓存清空并重新缓存