博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MyBatis 一级缓存和二级缓存及ehcache整合
阅读量:5064 次
发布时间:2019-06-12

本文共 771 字,大约阅读时间需要 2 分钟。

一级缓存

什么是缓存??

  缓存是存储在内存(cache)中的数据,一般情况都存在内存,在内存数据存储满了,会存储到硬盘上(disk),或是在我们进行一些操作和配置也可以把缓存存储到磁盘中。

缓存的作用是什么??

  缓存的作用可以减轻数据库的压力,减少用户对数据库的访问,可以说用户对数据库进行的重复操作在缓存中就可以实现操作,提高用户体验。

下面这张图是缓存的理解图

曾删改会对缓存造成影响。

写个测试,测试一下缓存是否存在:   答案是肯定的

 

 现在测试一下进行曾删改数据,是否会对缓存造成影响?

 

二级缓存

 二级缓存和一级缓存的区别,  一级缓存是存储在SqlSession作用域中生命周期是整个会话是进程级别的,二级缓存是可以跨进程的,实现数据共享。作用域是Mapper。

缓存的底层其实是个Map集合,key用于存储SQLId和sql,value存储的是sql的引用。

 

 

二级缓存默认是开启的,在大配置中,但是开启二级缓存要有三个要素。

二级缓存的开启方式:  1.在大配置中的setting设置二级缓存  2.在小配置中写cache自闭和标签  3.实体类继承Serializable

 

二级缓存的作用比一级缓存大,二级缓存并不是在一个会话中起作用,将一个会话结束,开启另一个会话二级缓存是否会起作用 

 

 

ehcache缓存的配置

为什么要配置ehcache?

  因为ehcache是专注缓存这块的,比mybatis自身的要快捷方便很多,因为mybatis注重的是框架。

1.在resources下可以上网查一下这个文件

2.在小配置中增加一条type写的是你ehcache的全路径

3.在项目的pom.xml引入ehcahce的jar包

 

 

 

转载于:https://www.cnblogs.com/java-263/p/9955965.html

你可能感兴趣的文章
Python 中 创建类方法为什么要加self
查看>>
关于indexOf的使用
查看>>
【转】JS生成 UUID的四种方法
查看>>
英语单词
查看>>
centos6.8下安装matlab2009(图片转帖)
查看>>
Mongo自动备份
查看>>
求助大神!怎样批量删除数据库表中某个字段中同样的一段字符!
查看>>
VMWARE虚拟机无法访问的三种方法分析
查看>>
enq: SQ - contention
查看>>
cer证书签名验证
查看>>
ant 安装
查看>>
新手Python第一天(接触)
查看>>
vue路由动态加载
查看>>
【原】UIWebView加载本地pdf、doc等文件
查看>>
iOS中ARC内部原理
查看>>
【bzoj1029】[JSOI2007]建筑抢修
查看>>
synchronized
查看>>
你不得不了解的应用容器引擎---Docker
查看>>
easyui datagrid 弹出页面会出现两个上下滚动条处理办法!
查看>>
迭代器和生成器
查看>>