我已经看到了很多使用事务的方法:在doInTransaction()
方法中,使用try catch,并在status.setRollBackOnly
块中使用catch
,如下所示:
transactionTemplate
.execute(new TransactionCallback() {
public Object doInTransaction(TransactionStatus transactionStatus) {
try {
doThings();
} catch (Exception e) {
transactionStatus.setRollbackOnly();
return false;
}
}
});
我很好奇,如果我不使用setRollBackOnly
,当doThings()
抛出异常时,事务会回滚吗?
非常感谢;