文章目录
🍃前言
本篇博客的将讲述 @Transactional注解的使用细节
主要学习 @Transactional 注解当中的三个常见属性:
-
rollbackFor:异常回滚属性.指定能够触发事务回滚的异常类型.可以指定多个异常类型
-
Isolation:事务的隔离级别.默认值为 Isolation.DEFAULT
-
propagation:事务的传播机制.默认为Propagation.REQUIRED
🌲rollbackFor(异常回滚属性)
@Transactional 默认只在遇到运行时异常和Error时才会回滚,非运行时异常不回滚.
即Exception的⼦类中,除了RuntimeException及其⼦类.
如果我们需要所有异常都回滚,需要来配置 @Transactional 注解当中的 rollbackFor 属性,通过 rollbackFor 这个属性指定出现何种异常类型时事务进行回滚
代码如下所示:
@Transactional(rollbackFor = Exception.class)
🎄事务隔离级别
我们先来看一下MySQL事务隔离级别都有那些
🚩MySQL事务隔离级别
SQL标准定义了四种隔离级别,MySQL全都⽀持.这四种隔离级别分别是: