Caching Grails ehcache.xml自定义缓存配置

Caching Grails ehcache.xml自定义缓存配置,caching,grails,ehcache,grails-2.0,Caching,Grails,Ehcache,Grails 2.0,已创建缓存配置的ehache.xml。 但此文件中的设置仅适用于hibernate 2L缓存 对于自定义缓存(例如缓存服务方法调用:@Cacheable('someCache')),缓存插件设置不起作用 <cache name="someCache" maxElementsInMemory="100" timeToLiveSeconds="86400" timeToIdleSeconds="86400"/> 就像springcache插件一样,我尝试共享cacheManager c

已创建缓存配置的ehache.xml。 但此文件中的设置仅适用于hibernate 2L缓存 对于自定义缓存(例如缓存服务方法调用:@Cacheable('someCache')),缓存插件设置不起作用

<cache name="someCache" maxElementsInMemory="100" timeToLiveSeconds="86400" timeToIdleSeconds="86400"/>
就像springcache插件一样,我尝试共享cacheManager

cacheManager(EhCacheManagerFactoryBean) {
    shared = true
}
哪里没有结果

现在我必须在两个地方编写配置,对于缓存管理,请使用grailsCacheManager.cacheManager&cacheManager.instance

有什么想法吗

Upd: 已创建Config.groovy中的配置

import  grails.test.Test
grails.cache.config = {
  domain {
    name Test
    timeToIdleSeconds 3600
    timeToLiveSeconds 3600
    maxElementsInMemory 50000
  }
  cache {
    name 'myCache'
    timeToIdleSeconds 86400
    timeToLiveSeconds 86400
    maxElementsInMemory 1000
  }
  defaults {
    eternal false
    overflowToDisk false
    diskPersistent false
    timeToIdleSeconds 600
    timeToLiveSeconds 3600
    memoryStoreEvictionPolicy 'LRU'
  }
}
域:

package grails.test
class Test {
  static mapping = {
    cache 'nonstrict-read-write'
    version false
  }
}
在控制器中,我调用:

Test.get(params.id)
但缓存为空: grails.test.test cur大小:0


自定义缓存“myCache”--work

看看GrailsEhcache插件。它包含解释如何使用Grails缓存插件DSL配置Hibernate二级缓存的部分。查找“自定义”缓存和两个缓存管理器中的“Hibernate二级缓存”和“Hibernate域类二级缓存”

问题。Hibernate二级缓存运行良好为什么需要两个缓存管理器?如果您需要一个用于Hibernate,另一个用于ehcache插件管理的缓存,那么文档将显示如何使用DSL配置它,而不需要ehcache.xmlI更新问题。域缓存的DSL配置不起作用。请参阅解决方法
Test.get(params.id)