Spring-EhCache配置实例
来源:互联网 发布:mac安装win10启动黑屏 编辑:程序博客网 时间:2024/05/16 04:06
使用配置
Maven依赖
<!--ehcache--> <dependency> <groupId>com.googlecode.ehcache-spring-annotations</groupId> <artifactId>ehcache-spring-annotations</artifactId> <type>jar</type> <version>1.2.0</version> </dependency> <dependency> <groupId>net.sf.ehcache</groupId> <artifactId>ehcache</artifactId> <version>2.10.1</version> </dependency> <!--guava--> <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>19.0</version> </dependency> <!--spring--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>${spring.framework.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>${spring.framework.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>${spring.framework.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-beans</artifactId> <version>${spring.framework.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-asm</artifactId> <version>3.1.4.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-expression</artifactId> <version>4.2.0.RELEASE</version> </dependency>
EhCache配置
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"> <defaultCache eternal="false" maxElementsInMemory="100000" overflowToDisk="false" diskPersistent="false" timeToIdleSeconds="86400" timeToLiveSeconds="86400" memoryStoreEvictionPolicy="FIFO" /> <cache name="cityEhCache" eternal="false" maxElementsInMemory="100000" overflowToDisk="false" diskPersistent="false" timeToIdleSeconds="86400" timeToLiveSeconds="86400" memoryStoreEvictionPolicy="FIFO" /> <cache name="areaEhCache" eternal="false" maxElementsInMemory="100000" overflowToDisk="false" diskPersistent="false" timeToIdleSeconds="86400" timeToLiveSeconds="86400" memoryStoreEvictionPolicy="FIFO" /> <!-- 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:内存数量最大时是否清除。 --> </ehcache>
ehcache-config.xml:
<?xml version="1.0" encoding="UTF-8"?><beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xmlns="http://www.springframework.org/schema/beans" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"> <bean id="cacheManager" class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean" p:configLocation="classpath:ehcache.xml"></bean> <bean id="cityEhCache" class="org.springframework.cache.ehcache.EhCacheFactoryBean" p:name="cityEhCache" p:cacheManager-ref="cacheManager" /> <bean id="areaEhCache" class="org.springframework.cache.ehcache.EhCacheFactoryBean" p:name="areaEhCache" p:cacheManager-ref="cacheManager" /></beans>
代码实例
import net.sf.ehcache.Ehcache;import net.sf.ehcache.Element;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.beans.factory.annotation.Qualifier;import org.springframework.stereotype.Service;@Servicepublic class CityCacheService { @Autowired @Qualifier("cityEhCache") Ehcache cityEhCache; public Object get(Long key) { Element element = cityEhCache.get(key); if (element == null) { return null; } return element.getObjectValue(); } public boolean refreshCache() { //refresh cache //cityEhCache.put(new Element(objectId, new Object())); }}
2 0
- Spring-EhCache配置实例
- spring + ehcache 使用实例
- spring + ehcache 使用实例
- Ehcache整合Spring实例
- Spring+EhCache缓存实例
- spring + EhCache缓存实例
- spring +ehcache 缓存实例
- Spring+EhCache缓存实例
- Spring+EhCache缓存实例
- Spring+EhCache缓存实例
- spring配置EHcache缓存
- Spring + EHcache配置
- Spring+EHcache配置
- Spring + EHcache配置
- Spring+Hibernate+EHcache配置
- Spring+Hibernate+EHcache配置
- Ehcache整合spring配置
- spring配置ehcache
- c++ const_cast and reinterpret_cast
- 汉诺塔(四) nyoj 1078
- Android——动态缩放图片
- 【36】按层打印二叉树
- CSS -Counter
- Spring-EhCache配置实例
- PHP知识体系思维导图
- C和指针—结构体和联合
- HDU 1170
- iOS_面试题
- IT运维流程 — ITIL
- const理解之二
- 堆栈堆栈
- Glib学习(5) 字符串 Strings