Spring中事务的传播行为,7种事务的传播行为,数据库事务的隔离级别
2024-09-05 05:37:17
Propagation.REQUIRED | 代表当前方法支持当前的事务,且与调用者处于同一事务上下文中,回滚统一回滚(如果当前方法是被其他方法调用的时候,且调用者本身即有事务),如果没有事务,则自己新建事务, |
Propagation.SUPPORTS | 代表当前方法支持当前的事务,且与调用者处于同一事务上下文中,回滚统一回滚(如果当前方法是被其他方法调用的时候,且调用者本身即有事务),如果没有事务,则该方法在非事务的上下文中执行 |
Propagation.MANDATORY | 代表当前方法支持当前的事务,且与调用者处于同一事务上下文中,回滚统一回滚(如果当前方法是被其他方法调用的时候,且调用者本身即有事务),如果没有事务,则抛出异常 |
Propagation.REQUIRES_NEW | 创建一个新的事务上下文,如果当前方法的调用者已经有了事务,则挂起调用者的事务,这两个事务不处于同一上下文,如果各自发生异常,各自回滚 |
Propagation.NOT_SUPPORTED | 该方法以非事务的状态执行,如果调用该方法的调用者有事务则先挂起调用者的事务 |
Propagation.NEVER | 该方法以非事务的状态执行,如果调用者存在事务,则抛出异常 |
Propagation.NESTED | 如果当前上下文中存在事务,则以嵌套事务执行该方法,也就说,这部分方法是外部方法的一部分,调用者回滚,则该方法回滚,但如果该方法自己发生异常,则自己回滚,不会影响外部事务,如果不存在事务,则与PROPAGATION_REQUIRED一样 |
数据库事务的隔离级别:
事务隔离级别 | 脏读 | 不可重复读 | 幻读 |
读未提交(read-uncommitted) | 是 | 是 | 是 |
不可重复读(read-committed) | 否 | 是 | 是 |
可重复读(repeatable-read) | 否 | 否 | 是 |
串行化(serializable) | 否 | 否 | 否 |
最新文章
- ActionBar修改字体颜色
- SpringMVC常用注解的用法
- extjs 4.2 高度自适应
- NSFileManager文件操作的十个小功能
- hdu 1044 Collect More Jewels(bfs+状态压缩)
- Unity3D脚本中文系列教程(十二)
- Web网站常规测试方法
- Linux shell编程02 shell程序的执行 及文件权限
- OpenCV——KNN分类算法 <;摘>;
- 让magento的validate验证hidden field
- Oracle 创建索引的基本规则总结
- python3 selenium 随机选择同一类型下的某一个元素
- 解决EditText跟ScrollView滑动冲突
- Part 2:模型与后台管理admin站点--Django从入门到精通系列教程
- SQL update select
- Java:ConcurrentHashMap是弱一致的
- Spark基础-scala学习(三、Trait)
- webstrom中如何将npm菜单调出?
- Java的反射机制的详细应用
- [AWS] Serverless
热门文章
- c++ STL find search
- OpenStack v.s. Kubernetes
- 20 Flutter仿京东商城项目 商品详情 底部弹出筛选属性 以及筛选属性页面布局
- Python之操作RabbitMQ
- Java8中List的removeif()函数的使用示例
- .Netcore 2.0 Ocelot Api网关教程(9)- QoS
- Java进程监控
- VUE缓存:keep-alive
- rqnoj PID95:多多看DVD(加强版)
- [Cometoj#3 B]棋盘_状压dp