“进阶:查询缓存”的版本间差异
跳到导航
跳到搜索
(建立内容为“category:Mybatis __TOC__ == 关于 == == 一级缓存 == == 二级缓存 == == 整合ehcache ==”的新页面) |
(→关于) |
||
第3行: | 第3行: | ||
__TOC__ | __TOC__ | ||
== 关于 == | == 关于 == | ||
[[File:Mybatis缓存.png|800px]] | |||
Mybatis一级缓存的作用域是同一个SqlSession,在同一个sqlSession中两次执行相同的sql语句,第一次执行完毕会将数据库中查询的数据写到缓存(内存),第二次会从缓存中获取数据将不再从数据库查询,从而提高查询效率。当一个sqlSession结束后该sqlSession中的一级缓存也就不存在了。<br/> | |||
Mybatis默认开启一级缓存。 | |||
<br/><br/> | |||
Mybatis二级缓存是多个SqlSession共享的,其作用域是mapper的同一个namespace,不同的sqlSession两次执行相同namespace下的sql语句且向sql中传递参数也相同即最终执行相同的sql语句,第一次执行完毕会将数据库中查询的数据写到缓存(内存),第二次会从缓存中获取数据将不再从数据库查询,从而提高查询效率。<br/> | |||
Mybatis二级缓存默认关闭。 | |||
== 一级缓存 == | == 一级缓存 == | ||
== 二级缓存 == | == 二级缓存 == | ||
== 整合ehcache == | == 整合ehcache == |
2020年10月12日 (一) 09:58的版本
关于
Mybatis一级缓存的作用域是同一个SqlSession,在同一个sqlSession中两次执行相同的sql语句,第一次执行完毕会将数据库中查询的数据写到缓存(内存),第二次会从缓存中获取数据将不再从数据库查询,从而提高查询效率。当一个sqlSession结束后该sqlSession中的一级缓存也就不存在了。
Mybatis默认开启一级缓存。
Mybatis二级缓存是多个SqlSession共享的,其作用域是mapper的同一个namespace,不同的sqlSession两次执行相同namespace下的sql语句且向sql中传递参数也相同即最终执行相同的sql语句,第一次执行完毕会将数据库中查询的数据写到缓存(内存),第二次会从缓存中获取数据将不再从数据库查询,从而提高查询效率。
Mybatis二级缓存默认关闭。