是否有可能通过grails的jesque在后台作业中强制执行事务性?
我正在使用jesque-grails插件,可以在其中插入其他服务,包括GORM ...我可以将作业标记为@Transaction,并期望有效负载在失败的情况下回滚的独立事务中执行吗?
@Transactional
适用于控制器和服务(尽管通常不建议将其用于控制器操作)。我不知道它是否可以在jesque作业上使用,但是应该很容易找出,即保存一些内容,然后抛出RuntimeException
并查看保存的数据是否回滚。
如果无法用@Transactional
注释方法,您可以将方法包装在withTransaction中>
经过尝试,我发现答案是肯定的。您可以简单地将作业标记为@Transactional,它应该可以正常工作。