时间:2021-05-19
自定义缓存 - ehcache
Ehcache是一种广泛使用的开源Java分布式缓存。主要面向通用缓存,Java EE和轻量级容器
1.导包
<!-- https://mvnrepository.com/artifact/org.mybatis.caches/mybatis-ehcache --><dependency> <groupId>org.mybatis.caches</groupId> <artifactId>mybatis-ehcache</artifactId> <version>1.1.0</version></dependency>2.在 Mapper.xml 中指定使用 ehcache 缓存实现
<!--在当前 Mapper.xml 中使用二级缓存--><cache type="org.mybatis.caches.ehcache.EhcacheCache"/>3.在resource中定义配置文件 ehcache.xml
<?xml version="1.0" encoding="UTF-8" ?><ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://ehcache.org/ehcache.xsd" updateCheck="false"> <!-- diskStore: 缓存路径, ehcache分为内存和磁盘两级, 此属性定义磁盘的缓存位置 参数: user.home - 用户主目录 user.dir - 用户当前工作目录 java.io.tmpdir - 默认临时文件路径 --> <!--当二级缓存的对象 超过内存限制时(缓存对象的个数>maxElementsInMemory),存放入的硬盘文件 --> <diskStore path="./tempdir/Tmp_Ehcache"/> <!--default 默认缓冲策略, 当ehcache找不到定义的缓存时, 则使用这个缓存策略, 这个只能定义一个--> <defaultCache eternal="false" maxElementsInMemory="10000" overflowToDisk="false" diskPersistent="false" timeToIdleSeconds="1800" timeToLiveSeconds="259200" memoryStoreEvictionPolicy="LRU"/> <cache name="cloud_user" eternal="false" maxElementsInMemory="5000" overflowToDisk="false" diskPersistent="false" timeToIdleSeconds="1800" timeToLiveSeconds="1800" memoryStoreEvictionPolicy="LRU"/> <!-- maxElementsInMemory:设置 在内存中缓存 对象的个数 maxElementsOnDisk:设置 在硬盘中缓存 对象的个数 eternal:设置缓存是否 永远不过期 overflowToDisk:当系统宕机的时候是否保存到磁盘上 maxElementsInMemory的时候,是否转移到硬盘中 timeToIdleSeconds:当2次访问 超过该值的时候,将缓存对象失效 timeToLiveSeconds:一个缓存对象 最多存放的时间(生命周期) diskExpiryThreadIntervalSeconds:设置每隔多长时间,通过一个线程来清理硬盘中的缓存 clearOnFlush: 内存数量最大时是否清除 memoryStoreEvictionPolicy:当超过缓存对象的最大值时,处理的策略;LRU (最少使用),FIFO (先进先出), LFU (最少访问次数) --></ehcache>到此这篇关于在Mybatis中使用自定义缓存ehcache的方法的文章就介绍到这了,更多相关Mybatis自定义缓存ehcache内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
1、Mybatis自定义配置的分析在我们自定义starter之前我们写了解一下Mybatis是如何实现starter在SpringBoot引入的依赖如下:org
自定义指令中使用AngularJS扩展HTML的功能。自定义指令使用的“指令”的功能定义。自定义指令只是替换了它被激活的元素。引导过程中AngularJS应用程
自定义指令中使用AngularJS扩展HTML的功能。自定义指令使用的“指令”的功能定义。自定义指令只是替换了它被激活的元素。引导过程中AngularJS应用程
在JSP中使用自定义标签可以达到这样的目的,事实上,我们所熟知的各类框架基本上都是通过自定义标签的形式来实现的。通过使用自定义标签,我们可以将实现复杂的逻辑在页
本文介绍了自定义vue组件发布到npm的方法,分享给大家,具体如下:为什么会有这个想法呢,主要是vue项目中自定义的组件在多个项目中使用。导致修改bug的时候,