还有另一个与Grails issue with unique/save/update有关的问题。
有什么方法可以避免调用def bookInstance.get(bookList.id [it])?例如,我仍然想覆盖数据库中的现有数据,但是我不想从数据库中加载现有数据,因此我将def bookInstance = new Book()bookInstance.id = XXX bookInstance.save()称为
这是行不通的,因为gorm将其作为新对象,有没有办法强制更新存在?像调用hibernateSession.update
最佳答案
加载实例应该不会很昂贵,因此您可能过早地进行了优化。但是您可以使用executeUpdate
来更新数据,而无需先检索它。例如,如果您的Book类如下所示:
class Book {
String author
String title
}
那么您可以像这样更新它:
Book.executeUpdate(
'update Book b set b.author=:author, b.title=:title where b.id=:id',
[author: params.author, title: params.author, id: params.id])
关于grails - grails调用休眠更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6408039/