我有一个服务项目和一个Web项目,我需要在两个项目中都使用ehcache缓存。这样,如果服务项目被更新,与缓存相关的更改(如键和失效规则)也将可用,而Web项目不会发生任何更改。由于如此独立,服务项目甚至可以与另一个不知道eh-cache的项目一起使用。
目前,我的Web项目也为自己的目的使用eh-cache。由于对eh-cache经验不多,我担心两个项目在部署在一起时可能会发生冲突。我在eh-cache网站上也没有找到相关信息。
请问您能否提供一些信息来最好地配置这两个项目,以便实现上述要求?
编辑:
我正在使用Spring,因此我希望将其用于我的缓存管理器。
例如,我在每个具有ehcache的jar的context.xml中使用以下内容来进行配置:对于jar 1,我有:
目前,我的Web项目也为自己的目的使用eh-cache。由于对eh-cache经验不多,我担心两个项目在部署在一起时可能会发生冲突。我在eh-cache网站上也没有找到相关信息。
请问您能否提供一些信息来最好地配置这两个项目,以便实现上述要求?
编辑:
我正在使用Spring,因此我希望将其用于我的缓存管理器。
例如,我在每个具有ehcache的jar的context.xml中使用以下内容来进行配置:对于jar 1,我有:
<ehcache:annotation-driven cache-manager="ehCacheManager1" />
<bean id="ehCacheManager1" class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean">
<property name="configLocation" value="classpath:ehcache-1.xml" />
</bean>
而对于我的第二个jar文件,我有以下内容
<ehcache:annotation-driven cache-manager="ehCacheManager2" />
<bean id="ehCacheManager2" class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean">
<property name="configLocation" value="classpath:ehcache-2.xml" />
</bean>
那么,这两个缓存都会工作吗?我担心ehcache:annotation-driven
会被最后读取的上下文覆盖,只有一个缓存会起作用。我错了吗,或者漏掉了什么?