Spring Boot setAutoCommit 让某个事务提交

阅读 56

2023-04-18


今天遇到个问题是API的所有SQL都是API结束的时候执行的。现在想执行到INSERT SQL的时候就直接INSERT 到数据库中。

用DataSourceTransactionManager即可。

import org.springframework.jdbc.datasource.DataSourceTransactionManager;
import org.springframework.transaction.support.DefaultTransactionDefinition;

@Autowired
// @Resource(name = "manager") 看情况
private DataSourceTransactionManager transactionManager;

TransactionStatus transactionStatus = transactionManager.getTransaction(new DefaultTransactionDefinition());
try{
  //dosomething
  transactionManager.commit(transactionStatus);
}catch(Exception ex){
  transactionManager.rollback(transactionStatus);
}

 

精彩评论(0)

0 0 举报