Spring缓存 org.springframework.cache.ehcache.EhCacheManagerFactoryBean
2014-02-20 17:25
459 查看
<bean id="ehCacheManagerFactory" class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean">
<property name="configLocation">
<!--<value>ehcache.xml</value>-->
<value>classpath:ehcache.xml</value>
</property>
</bean>
<!-- 方法缓存 -->
<bean id="methodCache" class="org.springframework.cache.ehcache.EhCacheFactoryBean">
<property name="cacheManager"><ref bean="ehCacheManagerFactory" /> </property>
<property name="cacheName"><value>methodCache</value></property>
</bean>
<bean id="methodCacheInterceptor" class="com.aman.MethodCacheInterceptor">
<property name="methodCache" ref="methodCache"></property>
</bean>
<bean class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
<property name="beanNames">
<list><value>qyNameService</value></list>
</property>
<property name="interceptorNames">
<list> <value>methodCacheInterceptor</value></list>
</property>
</bean>
<!--timeToIdleSeconds 当缓存闲置n秒后销毁 -->
<!--timeToLiveSeconds 当缓存存活n秒后销毁 -->
<!--
缓存配置
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:内存数量最大时是否清除。
-->
===》ehcahe.xml《===
<ehcache>
<diskStore path="/ehcache"/>
<defaultCache
maxElementsInMemory="1000"
eternal="false"
timeToIdleSeconds="1800"
timeToLiveSeconds="1800"
overflowToDisk="true"
/>
<!--
<cache name="sampleCache1"
maxElementsInMemory="10000"
eternal="false"
timeToIdleSeconds="300"
timeToLiveSeconds="600"
overflowToDisk="true"
/>
-->
<cache name="methodCache"
maxElementsInMemory="10000"
eternal="false"
timeToIdleSeconds="1800"
timeToLiveSeconds="1800"
overflowToDisk="true"
/>
</ehcache>
===》ehcahe.xml《===
<property name="configLocation">
<!--<value>ehcache.xml</value>-->
<value>classpath:ehcache.xml</value>
</property>
</bean>
<!-- 方法缓存 -->
<bean id="methodCache" class="org.springframework.cache.ehcache.EhCacheFactoryBean">
<property name="cacheManager"><ref bean="ehCacheManagerFactory" /> </property>
<property name="cacheName"><value>methodCache</value></property>
</bean>
<bean id="methodCacheInterceptor" class="com.aman.MethodCacheInterceptor">
<property name="methodCache" ref="methodCache"></property>
</bean>
<bean class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
<property name="beanNames">
<list><value>qyNameService</value></list>
</property>
<property name="interceptorNames">
<list> <value>methodCacheInterceptor</value></list>
</property>
</bean>
<!--timeToIdleSeconds 当缓存闲置n秒后销毁 -->
<!--timeToLiveSeconds 当缓存存活n秒后销毁 -->
<!--
缓存配置
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:内存数量最大时是否清除。
-->
===》ehcahe.xml《===
<ehcache>
<diskStore path="/ehcache"/>
<defaultCache
maxElementsInMemory="1000"
eternal="false"
timeToIdleSeconds="1800"
timeToLiveSeconds="1800"
overflowToDisk="true"
/>
<!--
<cache name="sampleCache1"
maxElementsInMemory="10000"
eternal="false"
timeToIdleSeconds="300"
timeToLiveSeconds="600"
overflowToDisk="true"
/>
-->
<cache name="methodCache"
maxElementsInMemory="10000"
eternal="false"
timeToIdleSeconds="1800"
timeToLiveSeconds="1800"
overflowToDisk="true"
/>
</ehcache>
===》ehcahe.xml《===
相关文章推荐
- Spring缓存 org.springframework.cache.ehcache.EhCacheManagerFactoryBean
- spring错误-在spring里面找不到org.springframework.cache.ehcache.EhCacheManagerFactoryBean
- org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'cacheManager' availa
- java.lang.NoSuchMethodError: org.springframework.cache.ehcache.EhCacheFactoryBean.setMaxEntriesLocal
- No bean named 'approvalBusinessManager_accountJobBo_bo' is defined org.springframework.beans.factory
- org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'transactionManager'
- Caused by: org.springframework.beans.factory.BeanCreationException: Could not autowire field
- org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type [com.serv
- [org.springframework.transaction.interceptor.TransactionProxyFactoryBean] depends on not found;
- org.springframework.beans.factory.BeanCreationException
- Caused by: org.springframework.beans.factory.BeanNotOfRequiredTypeException: Bean named 'dao' is exp
- 严重: Context initialization failed org.springframework.beans.factory.BeanCreationException: Error cre
- org.springframework.beans.factory.BeanCreationException: Error creating bean with name
- org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userServic
- org.springframework.beans.factory.BeanCreationException: Error creating bean with name
- org.springframework.beans.factory.BeanCreationException
- org.springframework.beans.factory.BeanCreationException
- SH初步整合的异常:org.springframework.beans.factory.BeanCreationException
- 项目启动报异常: org.springframework.beans.factory.CannotLoadBeanClassException
- org.springframework.beans.factory.BeanCreationException