Spring Cloud微服务框架,实战企业级优惠券系统
public void transactionTest() {
// 开启事务
TransactionStatus transactionStatus = transactionManager.getTransaction(transactionDefinition);
try {
// ----------执行数据库操作----------start
List<CMPhone> list = new ArrayList<>();
CMPhone cmPhone = new CMPhone();
cmPhone.setPhoneFirst("X1");
list.add(cmPhone);
cmPhoneMapper.insertBatch(list);
// 如事务写入的数据很多,且执行时间太长,可中途进行资源刷新(刷新缓存到数据库,提高速度)
transactionStatus.flush();
cmPhoneMapper.insertBatch(list);
// ----------执行数据库操作----------end
// 提交事务
transactionManager.commit(transactionStatus);
} catch (Exception e) {
e.printStackTrace();
// 回滚事务
transactionManager.rollback(transactionStatus);
}