class BookController {
static scope = "session"
// ...
}
scope
Purpose
Changes the scope of a controller
Examples
Description
Unless specified by the grails.controllers.defaultScope property in application.yml, controllers by default are "prototype" scoped which means that a new controller will be created for each request.
This behaviour can be set for an individual controller by specifying a scope attribute with one of the following values:
-
prototype(default) - A new controller will be created for each request (recommended for actions as Closure properties) -
session- One controller is created for the scope of a user session -
singleton- Only one instance of the controller ever exists (recommended for actions as methods)
See Controllers and Scopes in the user guide for more information.