支付事务手动提交测试

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