1.Spring容器事务管理是非常简单的
2.在需要使用事务的地方加上@Transactional(rollbackFor = Exception.class)
3.但是注意在使用的时候,不能将异常try catch,需要将异常抛出
4.才能事务进行管理
@Transactional(rollbackFor = Exception.class)
public void updateBatchStatusAndResult(List<DocDO> documents) {
try {
for (int i = 0; i < documents.size(); i++) {
DocDO docDO = documents.get(i);
docMapper.updateStatusAndResult(docDO);
}
} catch (Exception ex) {
logger.error(e);
throw e;
}
}
如果在这个申明事务中没有将异常抛出,那么异常是不会进行回滚的
并且如果使用的数据库是mysql,mysql的引擎需要设置为InnoDB