MyBatis学习总结(七)——Mybatis缓存
一、MyBatis缓存介绍
正如大多数持久层框架一样,MyBatis 同样提供了一级缓存和二级缓存的支持
- 一级缓存: 基于PerpetualCache 的 HashMap本地缓存,其存储作用域为 Session,当 Session flush 或 close 之后,该Session中的所有 Cache 就将清空。
2. 二级缓存与一级缓存其机制相同,默认也是采用 PerpetualCache,HashMap存储,不同在于其存储作用域为 Mapper(Namespace),并且可自定义存储源,如 Ehcache。
3. 对于缓存数据更新机制,当某一个作用域(一级缓存Session/二级缓存Namespaces)的进行了 C/U/D 操作后,默认该作用域下所有 select 中的缓存将被clear。
1.1、Mybatis一级缓存测试
1.2、Mybatis二级缓存测试
1、开启二级缓存,在userMapper.xml文件中添加如下配置
2、测试二级缓存
1.3、二级缓存补充说明
1. 映射语句文件中的所有select语句将会被缓存。
2. 映射语句文件中的所有insert,update和delete语句会刷新缓存。
3. 缓存会使用Least Recently Used(LRU,最近最少使用的)算法来收回。
4. 缓存会根据指定的时间间隔来刷新。
5. 缓存会存储1024个对象
cache标签常用属性:
MyBatis学习总结(七)——Mybatis缓存相关推荐
- Mybatis学习笔记(一) —— mybatis介绍
一.Mybatis介绍 MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名 ...
- 【最全Mybatis学习笔记(导入mybatis相关jar包)】
目录 1. 什么是Mybatis 2. 如何引入Mybatis? 3.编写Mybatis工具类 4. 万能Map 5. 模糊查询怎么写? 6. 作用域(Scope)和生命周期SqlSessionFac ...
- Mybatis学习第一天——Mybatis的安装配置以及基本CURD操作
1.Mybatis下载 Mybatis是开源的持久层框架,能够度jdbc进行简单的封装,但其并不是完全的ORM(Object Relational Mapping,对象关系映射),无法脱离数据库进行适 ...
- 【MyBatis】学习纪要七:缓存(一)
2019独角兽企业重金招聘Python工程师标准>>> 写在前面的话 缓存对数据库来说,不是必须,但对于系统来说,缓存是少不了的.我在之前的开发中没有学缓存,也没用到,所以这一次学M ...
- 【MyBatis学习8】MyBatis中的二级缓存
1. 二级缓存的原理 前面介绍了,mybatis中的二级缓存是mapper级别的缓存,值得注意的是,不同的mapper都有一个二级缓存,也就是说,不同的mapper之间的二级缓存是互不影响的.为了更加 ...
- 【Mybatis学习总结七】调用存储过程
今天这节课本来可以一小时结束的,我却从三点半搞到了九点.我觉得我是世界上最S13的人!!!没有之一!!!!一个小错害我花了一个晚上的时间去寻找,真是够无语的.好了,言归正传,还是先总结下今天学习的内容 ...
- 【MyBatis学习13】MyBatis中的二级缓存
1. 二级缓存的原理 前面介绍了,mybatis中的二级缓存是mapper级别的缓存,值得注意的是,不同的mapper都有一个二级缓存,也就是说,不同的mapper之间的二级缓存是互不影响的.为了更加 ...
- SqlMapConfig.xml配置文件---Mybatis学习笔记(七)
SqlMapConfig.xml文件的配置内容: SqlMapConfig.xml中配置的内容和顺序如下: properties(属性) settings(全局配置参数) typeAliases(类型 ...
- mybatis学习(45):开启二级缓存
目录结构 com.geyao.mybatis.mapper BlogMapper类 package com.geyao.mybatis.mapper;import java.util.List; im ...
最新文章
- redis 慢日志 slowlog
- 技术动态 | 67 亿美金搞个图,创建知识图谱的成本有多高你知道吗?
- Cloud一分钟 | 谷歌退出美国防部云计算竞标;网络黑灰产业已近千亿,个人信息泄露是源头...
- 周报(2017.3.19-3.16)
- Python中提供的各种队列结构
- 蓝桥杯2020国赛太原理工学子成绩大跃进
- [bzoj 1452] [JSOI2009]Count
- android中handler简单用法
- c++ string字符串翻转
- 解决报错“No module named ‘pyLDAvis.gensim‘”
- vue可以配合jade以及sass吗_在vue中如何使用Jade模板 - echart
- 手机谷歌浏览器设置不阻止弹窗弹出
- 核方法也称为核技巧(Kernel method)
- 哪些网站不适合做seo优化
- Linux打字游戏程序代码,c语言shell打字游戏.pdf
- canvas-实现放大镜效果
- 视频之四:视频流连接
- stc89C51系列单片机介绍
- linux 时间与bios,Linux操作系统时间与BIOS硬件时间
- 网络变压器工厂:了解POE POE+ 网络变压器(网络隔离滤波器)
热门文章
- 加固前奏2-替换application
- centons7编译安装zabbix3.4【转https://www.cnblogs.com/kowloon/p/7771495.html】
- 消息系统kafka原理解析
- Google员工自述:在哈佛教书和在Google工作的差别
- python 赋值、表达式
- 51 单片机 跑马灯2
- ubuntu各版本代号(更新至15.04)及各版本下载地址等
- python在windows安装paramiko模块
- 《Python核心编程》第二版第36页第二章练习 -Python核心编程答案-自己做的-
- 2009-12-12