我想在我的grails应用中实现spring cache插件,并且已经使用install-plugin命令安装了该插件。
根据我的 resources.groovy 中spring缓存的documentation,我有缓存配置
venueCache(org.springframework.cache.ehcache.EhCacheFactoryBean) { bean ->
cacheManager = ref("springcacheCacheManager")
eternal = true
diskPersistent = false
cacheName = "venueCache"
}
在 Controller 中,我的表演 Action 上有
@Cacheable("venueCache")
@Cacheable("venueCache")
def show(id) {
...
}
但是,每当我启动该应用程序并多次访问该URL时,它似乎都不会从缓存中消失。它记录以下语句:
web.GrailsFragmentCachingFilter - No cacheable annotation found for GET:/grails/venue/action-router.dispatch grails.plugin.springcache.web.FilterContext@4f7351e4
我的配置中缺少什么吗?
最佳答案
在我看来,这有些愚蠢-我必须为@Cacheable批注导入grails.plugin.springcache.annotations。*,但STS会自动导入Spring Cacheable批注。将导入更改为grails.plugin.springcache.annotations。*,并且一切正常
关于spring - 在Grails中实现Spring缓存插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10186082/