Grails Hibernate持久化设置:如何不自动保存



我有一个域类Teacher,它有很多学生。

当我使用

Teacher.students.each{it->
      it.lastupdated=date;
}

学生的属性被自动持久化到数据库中(似乎是立即)。

是否有一种方法可以防止这种行为,并使值是暂时的,直到我显式保存它们?

简单使用it.discard()来避免自动保存。在这里查看Grails文档。

另一个解决方案(可能不适用于您的Grails版本)是在配置文件中添加以下内容:

hibernate {
    flush.mode='manual'
}

最新更新