在Spring中使用事务时创建后提交

由于某些原因,我已经使用Spring

PlatformTransactionManager手动执行了事务提交和回滚操作,我需要做的是设置一个钩子,以便在事务提交后执行后提交操作。

通过查看:

 void commit(TransactionStatus status) throws TransactionException;

我没有看到我能确定交易是否成功,除了假设它没有假想。

而且我可以将AOP作为一种选择,但是以编程方式进行操作,也许使用回调方法呢?

回答:

你可以得到你想要什么以更简单的方式,TransactionSynchronizationManagerTransactionSynchronization

使用TransactionSynchronizationManager,您可以使用静态方法来获取有关当前交易的信息,并且可以注册一个TransactionSynchronization夹点,以便在调用时自动进行提交后

TransactionSynchronizationManager.registerSynchronization(new TransactionSynchronization(){

void afterCommit(){

//do what you want to do after commit

}

})

请注意,TransactionSynchronization是基于每个线程的(对于基本的Web请求通常不是问题)。

以上是 在Spring中使用事务时创建后提交 的全部内容, 来源链接: utcz.com/qa/406318.html

回到顶部