spring事物

来源:互联网 发布:天津搜客网络 编辑:程序博客网 时间:2024/05/21 08:55

spring事务介绍

PlatformTransactionManager :平台事物管理器,spring要管理事务,必须使用事务管理器进行事务配置时,必须配置事务管理器

TransactionDefinition:事务详情(事务定义、事务属性),spring用于确定事务具体详情,例如:隔离级别、是否只读、超时时间 等

TransactionStatus:事务状态,spring用于记录当前事务运行状态。例如:是否有保存点,事务是否完成

常用api

这里写图片描述

这里写图片描述

这里写图片描述

事物的传播性

传播行为:在两个业务之间如何共享事务。

int PROPAGATION_REQUIRED = 0; 默认值
支持当前事物,A如果有事务,B将使用该事务
A没有事务,B将创建一个新事务

int PROPAGATION_SUPPORTS = 1;支持
支持当前事物,A如果有事务,B将使用该事务
A没有事务,B将以非事物执行

int PROPAGATION_MANDATORY = 2;强制

支持当前事物,A如果有事务,B将使用该事务
A没有事务,B将抛异常

int PROPAGATION_REQUIRES_NEW = 3;

A如果有事务,A事务挂起,B创建一个新事务
如果A没有事务,B以非事务执行

int PROPAGATION_NOT_SUPPORTED = 4;

A如果有事务,A事务挂起,B以非事务执行
如果A没有事务,B以非事务执行

int PROPAGATION_NEVER = 5;

A如果有事务,A事务挂起,B抛异常
如果A没有事务,B以非事务执行

int PROPAGATION_NESTED = 6;
采用保存点 形成事务嵌套

0 0
原创粉丝点击