Transactional事务管理操作
Posted zzzyiren
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Transactional事务管理操作相关的知识,希望对你有一定的参考价值。
Transactional的属性:
alue | String | 可选的限定描述符,指定使用的事务管理器 |
propagation | enum: Propagation | 可选的事务传播行为设置 |
isolation | enum: Isolation | 可选的事务隔离级别设置 |
readOnly | boolean | 读写或只读事务,默认读写 |
timeout | int (in seconds granularity) | 事务超时时间设置 |
rollbackFor | Class对象数组,必须继承自Throwable | 导致事务回滚的异常类数组 |
rollbackForClassName | 类名数组,必须继承自Throwable | 导致事务回滚的异常类名字数组 |
noRollbackFor | Class对象数组,必须继承自Throwable | 不会导致事务回滚的异常类数组 |
noRollbackForClassName | 类名数组,必须继承自Throwable | 不会导致事务回滚的异常类名字数组 |
在需要支持事务配置的类上写上
@Transactional(isolation=Isolation.REPEATABLE_READ,propagation=Propagation.REQUIRED,readOnly=false)
isolation 事务隔离级别
REPEATABLE_READ:该隔离级别表示一个事务在整个过程中可以多次重复执行某个查询,并且每次返回的记录都相同。该级别可以防止脏读和不可重复读
propagation 事务传播行为
REQUIRED:如果当前存在事务,则加入该事务;如果当前没有事务,则创建一个新的事务。这是默认值。
readOnly 事务只读属性
属性:false/true
以上是关于Transactional事务管理操作的主要内容,如果未能解决你的问题,请参考以下文章
Springboot @Transactional 事务不回滚
@Transactional 具有多个事务管理器和多个数据库
Spring 事务管理Transactional使用注意事项
Spring Boot 中使用 @Transactional 注解配置事务管理