(Quick Reference)
withTransaction
目的
Purpose
Allows programmatic transactions using Spring's Transaction abstraction.
使用例
Examples
Account.withTransaction { status -> def source = Account.get(params.from)
def dest = Account.get(params.to) int amount = params.amount.toInteger()
if (source.active) {
source.balance -= amount if (dest.active) {
dest.amount += amount
}
else {
status.setRollbackOnly()
}
}
}
詳細
Description
The
withTransaction
method accepts a Closure with a
TransactionStatus argument. The
TransactionStatus
object can be used to programmatically control rollback of the transaction.
Refer to the user guide section of
Programmatic Transactions for more information.