我想为整个应用程序设置一个变量,并且我想在请求进入特定操作时更新它
喜欢
def action = {
// some integer variable is already set in application scope with name variable
variable++
render(view:"action", model:[variable])
}
在Gsp中
<html>
<body>
Variable is ${variable}
</body>
</html>
输出为
变量是1
//在后续请求中
变量是2
等等....
由于
答案 0 :(得分:1)
是否需要整个应用程序中的一个?
通过使用(单例)服务可以处理您的价值,例如:
class VariableService {
int value
synchronized int get() {
return value
}
synchronized int inc(int value) {
this.value += value
return this.value
}
synchronized void set(int value) {
this.value = value
}
}
并在需要的地方使用
答案 1 :(得分:1)
对于这个用例,有一些机会:
不要在每个控制器操作中增加'global'var,而是使用过滤器。