mybatis提供查询缓存,用于减轻数据库压力,提高数据库性能
mybatis提供一级缓存和二级缓存
一级缓存:sqlsession级别的缓存。
在操作数据库时,需要构造sqlsession对象,在对象中有一个数据结构(HashMap)用于存储缓存数据。
不同的sqlsession之间的缓存区域是互相不影响的。
Mybatis默认开启一级缓存。
二级缓存:也称为全局缓存,是mapper级别的缓存。
多个sqlsession去操作同一个mapper的sql语句,多个sqlsession可以共用二级缓存,所得到的数据会存在二级缓存区域,二级缓存是跨sqlsession的。
Mybatis需要手动设置启动二级缓存。