Spring中事务的传播行为和隔离级别

propagation:用来设置事务的传播行为

1
2
3
4
5
6
7
8
9
10
11
12
13
    一个方法运行在 另一个已经开启事务的方法中,当前方法是使用本身的事务还是开启一个新到的事务

#### Propagation.REQUIRED 默认值,使用原来的事务

```
@Transactional(propagation = Propagation.REQUIRED)
```

#### Propagation.REQUIRED_NEW,将原来的事务挂起,开启一个新的事务

```
@Transactional(propagation = Propagation.REQUIRES_NEW)
```

最后更新时间: 2019年3月28日17:47:14

isolation:用来设置事务的隔离级别

#### Isolation.REPEABLE_READ,可重复读。 MySql默认的隔离级别

#### Isolation.READ_COMMITTED,读已提交,Oracle默认的隔离级别,开发时通常使用的隔离级别

数据库事务并发问题

脏读

不可重复读

幻读

隔离级别

读未提交

读已提交

可重复读

串行化