文档章节

Mybatis的缓存

 小小小施爷
发布于 2017/09/11 16:10
字数 408
阅读 12
收藏 0

1 Mybatis的缓存

输入图片说明

输入图片说明

2 Mybatis的一级缓存

输入图片说明

输入图片说明

输入图片说明

3 Mybatis的二级缓存

输入图片说明

输入图片说明

输入图片说明

输入图片说明

输入图片说明

输入图片说明

输入图片说明

二级缓存的局限性

二级缓存的参数配置

输入图片说明

输入图片说明

输入图片说明

mybatis整合ehcache

输入图片说明

输入图片说明

输入图片说明

输入图片说明

输入图片说明

输入图片说明

ehcache.xml文件

<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../config/ehcache.xsd">     
    <diskStore path="h:\ehcache"/>     
  <!--  
       name:缓存名称。     
       maxElementsInMemory:缓存最大个数。     
       eternal:对象是否永久有效,一但设置了,timeout将不起作用。     
       timeToIdleSeconds:设置对象在失效前的允许闲置时间(单位:秒)。仅当eternal=false对象不是永久有效时使用,可选属性,默认值是0,也就是可闲置时间无穷大。     
       timeToLiveSeconds:设置对象在失效前允许存活时间(单位:秒)。最大时间介于创建时间和失效时间之间。仅当eternal=false对象不是永久有效时使用,默认是0.,也就是对象存活时间无穷大。     
       overflowToDisk:当内存中对象数量达到maxElementsInMemory时,Ehcache将会对象写到磁盘中。     
       diskSpoolBufferSizeMB:这个参数设置DiskStore(磁盘缓存)的缓存区大小。默认是30MB。每个Cache都应该有自己的一个缓冲区。     
       maxElementsOnDisk:硬盘最大缓存个数。     
       diskPersistent:是否缓存虚拟机重启期数据 Whether the disk store persists between restarts of the Virtual Machine. The default value is false.     
       diskExpiryThreadIntervalSeconds:磁盘失效线程运行时间间隔,默认是120秒。     
       memoryStoreEvictionPolicy:当达到maxElementsInMemory限制时,Ehcache将会根据指定的策略去清理内存。默认策略是LRU(最近最少使用)。你可以设置为FIFO(先进先出)或是LFU(较少使用)。     
       clearOnFlush:内存数量最大时是否清除。     
    -->     
    <defaultCache     
            maxElementsInMemory="10000"    
            eternal="false"    
            timeToIdleSeconds="120"    
            timeToLiveSeconds="120"    
            overflowToDisk="true"    
            maxElementsOnDisk="10000000"    
            diskPersistent="false"    
            diskExpiryThreadIntervalSeconds="120"    
            memoryStoreEvictionPolicy="LRU"    
            />     
</ehcache>  

© 著作权归作者所有

共有 人打赏支持
上一篇: Mybatis的扩展点
下一篇: mybatis的延迟加载
粉丝 5
博文 145
码字总数 102480
作品 0
合肥
私信 提问
mybatis入门教程(九)------mybatis缓存

Mybatis 缓存 正如大多数持久层框架一样,MyBatis 同样提供了一级缓存和二级缓存的支持 1. 一级缓存: 基于PerpetualCache 的 HashMap本地缓存,其存储作用域为 Session,当 Session flush 或...

残风vs逝梦
2014/06/16
0
5
【MyBatis框架】查询缓存-二级缓存-整合ehcache

mybatis整合ehcache ehcache是一个分布式缓存框架。 1.分布缓存 我们系统为了提高系统并发,性能、一般对系统进行分布式部署(集群部署方式) 如图 不使用分布缓存,缓存的数据在各各服务单独...

Mysoft
2015/09/21
36
0
Mybatis学习系列(七)缓存机制

Mybatis缓存介绍 MyBatis提供一级缓存和二级缓存机制。 一级缓存是Sqlsession级别的缓存,Sqlsession类的实例对象中有一个hashmap用于缓存数据。不同的Sqlsession实例直接hashmap互不影响。M...

仍是少年
2018/07/12
0
0
Mybatis 缓存系统源码解析

本文从以下几个方面介绍: 相关文章 前言 缓存的相关接口 一级缓存的实现过程 二级缓存的实现过程 如何保证缓存的线程安全 缓存的装饰器 相关文章 Mybatis 解析 SQL 源码分析二 Mybatis Mapp...

tsmyk0715
2018/11/25
0
0
《深入理解mybatis原理》 MyBatis的二级缓存的设计原理

[+] MyBatis的二级缓存是Application级别的缓存,它可以提高对数据库查询的效率,以提高应用的性能。本文将全面分析MyBatis的二级缓存的设计原理。 1.MyBatis的缓存机制整体设计以及二级缓存...

嘻哈开发者
2016/06/28
115
0

没有更多内容

加载失败,请刷新页面

加载更多

2亿用户背后的Flutter应用框架Fish Redux

背景 在闲鱼深度使用 Flutter 开发过程中,我们遇到了业务代码耦合严重,代码可维护性糟糕,如入泥泞。对于闲鱼这样的负责业务场景,我们需要一个统一的应用框架来摆脱当下的开发困境,而这也...

阿里云官方博客
11分钟前
0
0
C++生成随机数:高斯/正态分布(gaussian/normal distribution)

高斯分布也称为正态分布(normal distribution)。 常用的成熟的生成高斯分布随机数序列的方法由Marsaglia和Bray在1964年提出,C++版本如下: #include <stdlib.h>#include <math.h> d...

天蚕宝衣
14分钟前
0
0
从 Jenkins 迁移到 Jenkins X:一场持续交付之旅

背景 在 dailymotion,我们信奉 DevOps 最佳实践,并且重度使用了 Kubernetes。我们的部分产品(并非全部)已经部署在 Kubernetes 上。在迁移我们的广告技术平台时,为了赶时髦(作者你这么直...

微笑向暖wx
18分钟前
0
0
Kafka Producer Consumer

Producer API org.apache.kafka.clients.producer.KafkaProducer 如果想学习Java工程化、高性能及分布式、深入浅出。微服务、Spring,MyBatis,Netty源码分析的朋友可以加我的Java高级交流:...

编程SHA
26分钟前
0
0
在centos上搭建git服务器并自动同步代码

在centos上搭建git服务器并自动同步代码 tortoisegit git centos linux 5k 次阅读 · 读完需要 15 分钟 0 参考文章 CentOS安装Git实现多人同步开发 centos中GIT服务器搭建及使用密钥连接 简述...

linjin200
27分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部