支付事务手动提交测试

This commit is contained in:
2024-10-16 17:41:37 +08:00
parent 7bf25948d6
commit d091184bf8

View File

@@ -1023,12 +1023,16 @@ public class PayService {
orderInfo.setPayOrderNo("cash".concat(SnowFlakeUtil.generateOrderNo()));
tbOrderInfoMapper.updateByPrimaryKeySelective(orderInfo);
// 提交当前事务
transactionTemplate.execute((TransactionCallback<Void>) status -> {
status.flush(); // 提交
// 创建一个新的事务定义
DefaultTransactionDefinition def = new DefaultTransactionDefinition();
TransactionStatus status = transactionManager.getTransaction(def);
try {
// 提交当前事务
transactionManager.commit(status);
return null;
});
} catch (Exception e) {
transactionManager.rollback(status); // 回滚
throw e; // 重新抛出异常
}
log.info("已经手动提交事务");
ThreadUtil.sleep(10, TimeUnit.SECONDS);