`

spring2.0+ehcache2.1.0配置

阅读更多
记录使用ehcache时遇到的两个问题


一、原使用的是spring2.0+ehcache1.2.4.jar,在jdk1.6+tomcat6下运行正常,升级为jdk1.7+tomcat7后,第一次访问报错500,再刷新正常访问。

关键错误信息:

net.sf.ehcache.CacheException: cacheNameCache:Could not remove disk store entry for webres. Error was cacheName Cache: The Disk store is not active.


解决办法:ehcache升级为ehcache-2.10.1.jar,ehcache-core-2.6.11.jar,ehcache-spring-annotations-1.2.0.jar(最新版本的ehcache本系统框架不能支持),运行正常。

二、同一台服务器,运行多个项目。出现新问题。服务无法正常启动,启动时报错。

关键错误信息:

net.sf.ehcache.CacheException: java.io.FileNotFoundException: C:\tomcat-7\temp\.ehcache-diskstore.lock (拒绝访问。)

百度后找到一些解决办法,但因本系统spring、和ehcache版本低并不适用。但原理明白了。多个项目同时使用了ehcache-diskstore文件。第一个项目使用后,该文件被锁,其他项目不能正常读写。所以需要为每个项目ehcache文件设置各自的存储位置。

具体配置方法:

1、增加配置文件:ehcache.xml。主要是修改了磁盘存储路径,其他使用了默认设置。
<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:noNamespaceSchemaLocation="../config/ehcache.xsd" 
	updateCheck="false">
    <diskStore path="java.io.tmpdir/proName"/>

    <defaultCache
            maxElementsInMemory="10000"
            eternal="false"
            timeToIdleSeconds="120"
            timeToLiveSeconds="120"
            maxElementsOnDisk="10000000"
            diskExpiryThreadIntervalSeconds="120"
            memoryStoreEvictionPolicy="LRU">
    </defaultCache>
</ehcache>


2、修改spring的相关配置文件。增加了configLocation的配置
<bean id="cacheManager" class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean">
		<property name="configLocation" value="classpath:ehcache.xml"/> 
        <property name="shared" value="true"/>  
	</bean>

分享到:
评论

相关推荐

    开源测试项目:spring mvc+springsecurity3+ehcache+bootstrap+mysql

    开源测试项目:spring mvc+springsecurity3+ehcache+bootstrap+mysql 内附MySQL表,直接导入就可运行 效果图请移步:http://blog.csdn.net/yangxuan0261/article/details/10053947

    Spring+EhCache实例源码

    Spring+EhCache实例源码,本实例的环境 eclipse + maven + spring + ehcache + junit,实例详解请访问博主博客:http://blog.csdn.net/u013142781

    spring + ehcache + redis两级缓存

    在Spring中,我们可以配置Ehcache作为缓存 provider,通过注解或XML配置来启用和管理缓存。 **Redis** 是一个高性能的键值数据库,常被用作分布式缓存系统。相比于Ehcache,Redis支持更丰富的数据结构(如字符串、...

    spring+ehcache+mabatis

    spring+ehcache+mabatis。测试用例用的是mysql,数据库的配置在jdbc.properties里面。所要的sql在src/main/resources下的student.sql。测试的话调用controller下的update和getOne那两个接口测试。

    基于SpringBoot2.0 + Spring Data Jpa + Thymeleaf + Shiro 开发的后台管理系统

    TIMO后台管理系统,基于SpringBoot2.0 + Spring Data Jpa + Thymeleaf + Shiro 开发的后台管理系统,采用分模块的方式便于开发和维护,支持前后台模块分别部署,目前支持的功能有:权限管理、部门管理、字典管理、...

    spring Security+Ehcache+quartz+swagger2+Mysql5.6+springjdbc

    以SpringBoot 为中心,模块化开发系统,用户可以随意删减除权限...复用,组装性强主要应用技术:spring Security+Ehcache+quartz+swagger2+Mysql5.6+springjdbc+druid+spring social+spring session + layerui+vue.js

    Spring MVC+Mybatis+Ehcache+Apache Shiro+Bootstrap整合开发java仓库管理系统源码

    积分最低,Spring MVC+Mybatis+Ehcache+Apache Shiro+Bootstrap整合开发java仓库管理系统源码 开发环境:Eclipse ,JDK 1.8 ,Tomcat7 技术选型 后端技术 SpringMVC MVC框架 Spring Framework 容器 Apache ...

    springMvc+spring+mybatis+shiro+redis+ehcache后台管理系统.zip

    本后台管理系统,采用流行的框架springMvc+spring+mybatis+shiro+redis+ehcache开发,实现了权限管理(菜单权限、数据权限),solr全文搜索引擎,activiti工作流程引擎,cas单点登陆等功能,完善的代码生成器 后期还...

    struts2.1.6+spring2.0+hibernate3.2常用配置包

    MyEclipse8.0中自带的struts2版本是2.1.6,spring版本有2.0,2.5的,hibernate版本较多些至3.2,首先选版本就选择最优的,struts2没的选只有2.1.6版的,所以先导入struts2支持,然后是spring选的是2.0,问题就出在...

    Struts2+Spring+Hibernate+Ehcache+AJAX+JQuery+Oracle 框架集成用户登录注册Demo工程

    1.通过google ehcache-spring-annotatios.jar自动注解方式实现整合Spring+Ehcache。 2.Action里通过struts2-spring-plugin.jar插件自动根据名字注入。 3.Ajax无刷新异步调用Struts2,返回Json数据,以用户注册为例。...

    spring MVC+ibatis+ehcache开发包集合

    自己项目的开发包集合,其中包括:缓存处理ehcache相关jar,spring MVC4.0 jar,ehcache依赖jar,以及其他jar(图像处理thumbnailator-0.4.2),包虽然不是很新但可用。实际使用时找包较为麻烦,现在整理出来,希望...

    spring+ehcache示例整合Demo

    Spring 和 Ehcache 是两个在Java开发中非常重要的框架。Spring 是一个全面的后端开发框架,提供了依赖注入、AOP(面向切面编程)、MVC(模型-视图-控制器)等特性,使得应用程序的构建变得更加简洁和模块化。Ehcache...

    SpringMVC+Mybatis+Spring+Shiro+ehcache整合配置文件

    Ehcache可以很好地与Spring集成,通过简单的配置即可实现缓存管理。 在整合这些技术时,首先需要在Spring的配置文件中定义bean,包括数据源、SqlSessionFactory(Mybatis的核心)、MapperScannerConfigurer(扫描...

    Spring AOP+ehCache简单缓存系统解决方案

    在这里,我们通过`setCache(Cache cache)`方法注入缓存实例,这通常是由Spring配置文件中配置的bean注入。Spring对ehCache的支持使得集成更加简便,我们可以利用Spring的缓存抽象来管理ehCache实例,包括设置缓存...

    spring+ibatis+ehcache整合例子

    Ehcache的配置包括在Spring配置文件中声明CacheManager,以及定义需要缓存的bean和对应的缓存策略。 4. **编写Mapper接口和XML映射文件** iBatis中的Mapper接口对应数据库操作,XML映射文件定义了SQL语句和结果...

    springMVC+mybatis+ehcache整合

    在Spring中整合Ehcache,可以通过Spring的缓存抽象进行配置,定义缓存注解如`@Cacheable`、`@CacheEvict`、`@CachePut`来控制缓存的存取和清除。Ehcache的配置文件(ehcache.xml)可以指定缓存的大小、存活时间和...

    spring3.2+ehcache 注解使用

    在Spring的配置文件(如`applicationContext.xml`)中添加以下内容来创建一个Ehcache管理器: ```xml &lt;bean id="cacheManager" class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean"&gt; ...

    spring2.5整合ehcache2.0使用

    在本文中,我们将深入探讨如何将Spring 2.5与Ehcache 2.0进行集成,以便在我们的应用程序中实现高效、可扩展的缓存管理。Ehcache是一款广泛使用的开源Java缓存解决方案,而Spring框架则为它提供了一个方便的集成层,...

    spring mvc + mybatis + ehcache

    Spring框架对Ehcache有很好的支持,可以通过`&lt;ehcache:config&gt;`标签进行配置,并通过`@Cacheable`等注解实现方法级别的缓存控制。 集成这三个框架,首先要在Spring的配置文件中定义DataSource、SqlSessionFactory和...

Global site tag (gtag.js) - Google Analytics