功能:
提升数据的检索效率,避免每一次的查询都去检索数据库。
一级缓存是Sqlsession级别的缓存,也叫本地缓存,因为每一个用户在执行查询的时候,都需要使用SqlSession来执行,为了避免每一次都去查询数据库,mybatis把查询出来的数据,缓存到SqlSession的本地缓存里面,后续的Sql如果在命中缓存的情况下,就可以直接从本地缓存区读取这样的数据。
如果想实现一个跨SqlSession级别的缓存,一级缓存是无法做到的
因此引入了二级缓存,当多个用户在查询数据的时候,只要有任何一个sqlSession拿到了数据,就会放入到二级缓存里面,其他的SqlSession就可以直接从二级缓存里面去加载数据,