Mybatis 的一级、二级缓存?
2024-09-07 21:32:28
1)一级缓存: 基于 PerpetualCache 的 HashMap 本地缓存,其存储作用域为
Session,当 Session flush 或 close 之后,该 Session 中的所有 Cache 就
将清空,默认打开一级缓存。
2)二级缓存与一级缓存其机制相同,默认也是采用 PerpetualCache,HashMap
存储,不同在于其存储作用域为 Mapper(Namespace),并且可自定义存储源,
如 Ehcache。默认不打开二级缓存,要开启二级缓存,使用二级缓存属性类需要
实现 Serializable 序列化接口(可用来保存对象的状态),可在它的映射文件中配置
<cache/> ;
3)对于缓存数据更新机制,当某一个作用域(一级缓存 Session/二级缓存
Namespaces)的进行了 C/U/D 操作后,默认该作用域下所有 select 中的缓存将
被 clear。
最新文章
- 用Kotlin开发Android应用(II):创建新项目
- 关注微信 即可连上wifi 的设计思路
- Codeforces Round #277 (Div. 2) D. Valid Sets 暴力
- python内置函数与匿名函数
- 99%的人理解错 HTTP 中 GET 与 POST 的区别
- pymysql安装和使用
- linux中syscall调用号查看
- node八-核心模块、包
- 功能测试话题分享-0323 Bug
- spark调用hdfsAPI
- 【mysql】MySQLdb返回字典方法
- Luogu 2147 洞穴勘测 - LCT
- Xcode常见设置
- HTML5 CSS Reset
- Linux LNMP架构搭建
- 在JSP中,使用get提交方式出现乱码时,为什么要使用new String(s.getBytes(";iso-8859-1";),";utf-8";);?
- web应用中的Filter过滤器之基础概述
- 创龙OMAPL138开发板测试(1)
- 为什么Android无法设置无标题栏?
- windows下怎么安装protobuf for python