spring事务管理一:关于事务管理的接口 -尊龙游戏旗舰厅官网
尊龙游戏旗舰厅官网
收集整理的这篇文章主要介绍了
spring事务管理一:关于事务管理的接口
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
2019独角兽企业重金招聘python工程师标准>>>
spring事务管理主要有三个接口:
详细:
关于事务隔离级别,有5种。分别是:
- isolation_default,默认隔离级别,也就是根据数据的默认隔离级别,不同的数据库的隔离级别也不尽相同。
- isolation_read_uncommitted,级别最低的隔离级别。允许读取其他还未提交但已改变的数据,可导致脏读、幻读、不可重复读等异常
- isolation_read_committed,提交隔离级别。允许读取其他已经提交的数据,可防止脏读,但可能出现幻读、不可重复读
- isolation_repeatable_read,更高级别的隔离。对相同字段的多次读取是一致的,可防止脏读、不可重复读,但可能出现幻读
- isolation_serializable,级别最高的隔离。采用锁的方式进行事务操作,可以防止脏读、幻读、不可重复读,但随之而来的付出的时间和性能代价也更大
关于事务传播行为,事务传播行为主要是用来解决业务层对事务的调用问题,有7种。分别是:
- propagation_required,默认的传播行为,当前如果有事务,spring就会使用该事务,否则会开始一个新事务
- propagation_supports,如果当前有事务则使用,没有也不会开始新事务
- propagation_mandatory,如果当前有事务则使用,没有则会抛出异常
- propagation_requires_new,总是会开启新事务,如果当前已经有事务存在会将原有的事务挂起
- propagation_not_supported,以非事务形式运行行为,如果当前已经有事务存在则挂起该事务
- propagation_never,以非事务形式运行行为,如果当前已经有事务存在则抛出异常
- propagation_nested,如果当前有事务存在,则嵌套在该事务下执行;没有则会开启新事务
事务超时时间则是以gettimeout()方法获取,单位为秒(s);是否只读则通过isreadonly()方法获取。
关于transactionstatus接口的操作主要有三个,分别是isnewtransaction() 是否是新事务、isrollbackonly()是否是只回滚事务,还有一个最重要的方法setrollbackonly(),这个方法将事务设置为只允许回滚操作,即事务在任何操作下都是最终执行回滚。
转载于:https://my.oschina.net/u/2428684/blog/686034
总结
以上是尊龙游戏旗舰厅官网为你收集整理的spring事务管理一:关于事务管理的接口的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇:
- 下一篇: python data analysis