当前访客身份:游客 [ 登录  | 注册加入尚学堂]
启用新域名sxt.cn
新闻资讯

struts2.3+spring3.3+hibernate3.6OA项目实战----缓存(七)

goldbin 发表于 2年前  | 评论(0 )| 阅读次数(961 )|   1 人收藏此文章,   我要收藏
摘要 在业务处理过程中,有些数据经常访问,但是修改不频繁。这些数据都可以做缓存处理。一般缓存加在表现层或者业务层。 在spirng3.2之后的版本中,支持在业务层做缓存处理。之前的版本没有。

机构列表数据进换成

1、导入spring的缓存支持第三方jar包(ehcache1.5.jar)

2、准备ehcache.xml配置文件,该文件在scr中。可以从ehcache的jar中拷贝一个模版。


<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../config/ehcache.xsd">

	<!-- 缓存数据存放磁盘路径 -->
    <diskStore path="C:/cache"/>

   
    <defaultCache
            maxElementsInMemory="1000"
            eternal="false"
            timeToIdleSeconds="120"
            timeToLiveSeconds="120"
            overflowToDisk="true"
            maxElementsOnDisk="10000000"
            diskPersistent="false"
            diskExpiryThreadIntervalSeconds="120"
            memoryStoreEvictionPolicy="LRU"
            />
</ehcache>

3、配置spring.xml,加入spring对ehcache的整合。

<!-- spring 业务层方法缓存处理 -->
	<cache:annotation-driven cache-manager="cacheManager"/>
	
	<bean id="ehcache" class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean">
		<property name="configLocation" value="classpath:ehcache.xml"></property>
	</bean>

	<bean id="cacheManager" class="org.springframework.cache.ehcache.EhCacheCacheManager">
		<property name="cacheManager" ref="ehcache"></property>
	</bean>

4、在需要使用缓存策略的业务方法上加:@Cacheable("abc")

或者@Cacheable(value="pm",key="#orgId")//使用key作为缓存数据的唯一表示,一般使用业务方法某个参数。

其中“abc”:表示引用的缓存策略的名称。在缓存的配置文件中定义的

5、注意:在ehcache.xml中除了defaultCache之外,还需要定义一个新的缓存策略。

分享到:0
关注微信,跟着我们扩展技术视野。每天推送IT新技术文章,每周聚焦一门新技术。微信二维码如下:
微信公众账号:尚学堂(微信号:bjsxt-java)
声明:博客文章版权属于原创作者,受法律保护。如果侵犯了您的权利,请联系管理员,我们将及时删除!
(邮箱:webmaster#sxt.cn(#换为@))
北京总部地址:北京市海淀区西三旗桥东建材城西路85号神州科技园B座三层尚学堂 咨询电话:400-009-1906 010-56233821
Copyright 2007-2015 北京尚学堂科技有限公司 京ICP备13018289号-1 京公网安备11010802015183