(Quick Reference)
cache
Purpose
Enables the Hibernate second-level cache for the domain class.
Examples
class Book {
…
static mapping = {
cache true
}
}
Description
Usage:
cache(boolean/string/map)
Arguments:
usage
- The cache usage. Can be read-only
, read-write
, nonstrict-read-write
or transactional
include
(optional) - Whether to include non-lazy associations. Can be all
or non-lazy
You enable caching per domain class, for example:
static mapping = {
cache true
}
This will configure the domain class to use a 'read-write' cache, but you can configure whatever cache policy is appropriate (and supported by the cache implementation):
static mapping = {
cache 'transactional'
}
or
static mapping = {
cache usage: 'read-only', include: 'non-lazy'
}
You can also configure the cache policy on a per-association basis:
class Author { static hasMany = [books: Book] static mapping = {
books cache: true // or 'read-write' etc.
}
}
For more information see the section on
Caching in the user guide.