2

对于用 grails 实现缓存的好方法,是否有类似的最佳实践?应该使用哪些插件,应该缓存页面的哪些部分以及如何缓存?

4

1 回答 1

9

取决于您的需求的大量问题。要缓存域对象,您可以使用 Hibernate 缓存,如下所示:

class Book {
    …
    static mapping = {
        cache true
    }
}

并在以下位置配置 Hibernate 二级缓存grails-app/conf/DataSource.groovy

hibernate {
    cache.use_second_level_cache=true
    cache.use_query_cache=true
    cache.provider_class='org.hibernate.cache.EhCacheProvider'
}

Grails 文档缓存指南

您还可以使用基于Spring 缓存的Grails 缓存插件缓存您的控制器和服务:

@Cacheable('message')
   Message getMessage(String title) {
      println 'Fetching message'
      Message.findByTitle(title)
   }

您会在此处找到出色的文档。

如果您想缓存渲染页面,您还可以查看gsp 模板渲染缓存插件

于 2012-12-17T16:27:57.197 回答