我创建了新的grails 3.0.3应用程序,例如:
grails创建应用程序cache_test
使用一种方法在其中添加了一个 Controller :
package cache_test
import grails.plugin.cache.Cacheable
import org.springframework.beans.factory.annotation.Autowired
import org.springframework.cache.CacheManager
class IndexController {
@Autowired
CacheManager grailsCacheManager
@Cacheable(value = "index")
def index() {
System.err.println("Invoked")
render("Hello man")
}}
而且我希望index()方法的结果将在第一次调用后出现在缓存中,但是,此方法在每次我发送请求时都会调用。
我怎么了
最佳答案
似乎有grails缓存插件的回归。
我必须为 Controller 编写自己的拦截器,该拦截器基本上是按请求的URL缓存响应。
丑陋, buggy ,但可以
https://github.com/vkorobkov/grails-3-caching-workaround/
关于grails - grails 3.0.3缓存不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32073819/