Spring事务传播行为7种类型 --- 看一遍就能记住!

2022-04-13 09:15:55 浏览数 (1)

一、Spring 事务传播行为一共有7种类型,主要分为3类:

1)支持当前事物、

2)不支持当前事务、

3)奇葩类型。

二、支持当前事物:

1)支持当前事物 —— PROPAGATION_REQUIRED:如果当前没有事物,就新建一个事务;如果有事物,就直接使用当前前事物、

2)支持当前事物 ——PROPAGATION_SUPPORTS :如果当前没有事务,就以非事务方式执行、

3)支持当前事物 ——PROPAGATION_MANDATORY:如果当前没有事务,就抛出异常。

三、不支持当前事物:

1)不支持当前事物 —— PROPAGATION_REQUIRES_NEW:如果当前有事物,就将当前前事物挂起,新建一个事物、

2)不支持当前事物 —— PROPAGATION_NOT_SUPPORTED:如果有事务,就将当前前事物挂起,并以非事务方式执行、

3)不支持当前事物 —— PROPAGATION_NEVER:如果有事物,就抛异常,即必须以非事务方式执行。

四、奇葩类型:

其实这是支持当前事物的特例 —— PROPAGATION_NESTED: 如果有事物,也新建一个事务,以事务嵌套事物的方式执行。

0 人点赞