spring事务的配置
通常默认是REQUIRED, 如下:
@Transactional(propagation = Propagation.REQUIRED)
public void t1(){
//业务代码
}
因为默认是 REQUIRED,所以通常不会显示写出来,如下:
@Transactional
public void t1(){
//业务代码
}
通常会加上回滚,因为默认不回滚,如下:
@Transactional(rollbackFor = Exception.class)
public void t1(){
//业务代码
}
但有时候不需要开启事务,即关闭事务,这时候可以使用 NOT_SUPPORTED,如下:
@Transactional(propagation = Propagation.NOT_SUPPORTED)
public void t1(){
//业务代码
}
7种事务传播行为
REQUIRED:支持当前事务,如果当前没有事务,就新建一个事务。这是最常见的选择。
SUPPORTS:支持当前事务,如果当前没有事务