<cache name="dictCache"
maxElementsInMemory="50"
eternal="false"
timeToIdleSeconds="60"
timeToLiveSeconds="60"
overflowToDisk="false"
memoryStoreEvictionPolicy="LFU">
</cache>
也可以使用注解的形式进行标注缓存方法,不过要修改配置文件,详见springmodules的文档,这里就不提供了。
缓存说明:
1、方法不含有参数
时间到期缓存失效;调用flush,缓存失效。
2、方法中含有参数
参数不同则每次都缓存,若缓存中存在相同对象,则调用缓存。
当调用flush,该id对应的缓存都失效。
当缓存时间到期,该id对应的缓存都失效。
建议:对没有关联的缓存对象采取不同的id配置。所以ehcache会有好多的cache-id配置信息。
<props>
<prop key="com....test.Manager.get*">
cacheName=dictCache
</prop>
………
<prop key="com....test.Manager2.get*">
cacheName=dictCache2
</prop>
</props>
<props>
<prop key="com....test.Manager.update*">
cacheNames=dictCache
</prop>
………
<prop key="com....test.Manager2.update*">
cacheNames=dictCache2
</prop>
</props>