@Transional(propagation=REQUIRED)
默认值是这个,使用同一个事务
修改库存,修改余额
修改库存是一个事务,修改库存的时候会调用修改余额的方法,而这时还会使用原来的事物,根据事务的原子性,要么都成功,要么都失败。所以失败时,就会回滚事务
REQUIREDS_NEW 会开启一个新的事物,一个成功,一个失败,失败的会回滚,而成功的不会回滚
常用的是这两个
isolation设置事务的隔离级别
@Transional(propagation=REQUIRED)
默认值是这个,使用同一个事务
修改库存,修改余额
修改库存是一个事务,修改库存的时候会调用修改余额的方法,而这时还会使用原来的事物,根据事务的原子性,要么都成功,要么都失败。所以失败时,就会回滚事务
REQUIREDS_NEW 会开启一个新的事物,一个成功,一个失败,失败的会回滚,而成功的不会回滚
常用的是这两个
isolation设置事务的隔离级别