0

GORM の where クエリで悲観的ロックを実現したいと考えています。

何かのようなもの

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」クエリを介してこれを達成する方法はありますか?

4

1 に答える 1

2

lockgrails.gorm.DetachedCriteria ( の結果)では利用できず、 org.codehaus.groovy.grails.orm.hibernate.query.AbstractHibernateCriteriaBuilderからwhereのみ利用できます。createCriteiralock()LockModeLockMode.UPGRADE

いつでもスプレッドドット演算子を使用して、結果を取得した後に結果をロックできます。

于 2014-09-12T15:38:40.160 に答える