在 Spring 中,可以使用
TransactionSynchronizationManager
来获取当前事务的状态。
通过调用
TransactionSynchronizationManager.isActualTransactionActive()
可以判断当前是否有活动事务。如果返回
true
,则当前有活动事务;如果返回
false
,则当前没有活动事务。
import org.springframework.transaction.support.TransactionSynchronizationManager;
if (TransactionSynchronizationManager.isActualTransactionActive()) {
// There is an active transaction
} else {
// There is no active transaction
请注意,该方法仅适用于管理事务的代码在同一线程中运行。如果在不同的线程中,则需要使用其他方法来确定事务的状态。