在 Grails 服务中手动回滚

rollback manually within grails service

我需要在 grails 服务中手动执行事务回滚。 有什么办法不抛出 RuntimeException 吗? (使用 Grails 2.4.5)

是的,通过使用 .withTransaction {} 块。喜欢:

MyDomain.withTransaction { status ->
   ....
   status.setRollbackOnly() //when you want rollback
}

MyDomain 可以是任何域 class,不是本次交易中使用的必要域。

http://grails.github.io/grails-doc/latest/guide/GORM.html#programmaticTransactions