GORM中的悲观锁定在哪里查询

时间:2014-09-12 12:32:12

标签: grails gorm pessimistic-locking

我想用GORM的查询来实现悲观锁定。

这样的东西
def query = Person.where {
    firstName == "Bart"
}
//instead of where.findAll()
List personsLocked = where.lockAll()

我知道,我可以通过条件API实现这一点:

List personsLocked = Person.createCriteria().list {
    eq('firstName', 'Bart')
    lock true
}

有没有办法通过“where”查询来实现这个目标?

1 个答案:

答案 0 :(得分:2)

grails.gorm.DetachedCriterialock的结果)中未提供

where,并且只能通过createCriteira提供的org.codehaus.groovy.grails.orm.hibernate.query.AbstractHibernateCriteriaBuilder或明确调用{{}}关于实例的{1}},从而将lock()更改为LockMode

您可以随时使用点差运算符并在获得结果后锁定结果。