有没有办法使用注释配置EHcache。
我有一个启用了Cache的Spring / Hibernate项目。目前我正在使用ehcache.xml来定义如何缓存实体的配置。
这就是我的ehcache.xml的样子:
<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="ehcache.xsd"
updateCheck="true"
monitoring="autodetect"
dynamicConfig="true">
<diskStore path="java.io.tmpdir/ehcache"/>
<defaultCache
.
.
.
</defaultCache>
<cache name="exmaple.model.User" maxEntriesLocalHeap="1000" eternal="false"
timeToIdleSeconds="120" timeToLiveSeconds="300">
<persistence strategy="localTempSwap"/>
</cache>
</ehcache>
我想知道是否可以在@Entity之上使用注释而不是使用此xml文件。
答案 0 :(得分:2)
有两个部分。一个是Spring Cache和Hibernate。它们都提供注释来告诉应该缓存方法或实体。
一个例子是来自Spring Cache的@Cacheable
。
然后,你有ehcache.xml
。这是自己配置缓存。它不会被注释所吸引。但它可以通过编程方式进行。 Ehcache 3使用构建器变得容易。您将看到一个示例here。此示例还使用Spring Cache和Hibernate二级缓存。
Ehcache 2(你正在使用)没有建设者。您需要调用CacheManager.newInstance(Configuration)
并将所需的任何配置放入其中。可悲的是,我手边没有示例。