spring事务

Posted scnu-yang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spring事务相关的知识,希望对你有一定的参考价值。

Spring事务属性的种类:
  1)传播行为:定义了被调用方法的事务边界。
  2)隔离级别:在操作数据时可能带来3个副作用,分别是脏读、不可重复读、幻读。SQL和Spring都分别提供了几种隔离级别来避免副作用的产生
  3)只读:如果在一个事务中所有关于数据库的操作都是只读的,也就是说,这些操作只读取数据库中的数据,而并不更新数据,那么应将事务设为只读模式( READ_ONLY_MARKER ) , 这样更有利于数据库进行优化 。
  4)事务超时:如果一个事务长时间运行,这时为了尽量避免浪费系统资源,应为这个事务设置一个有效时间,使其等待数秒后自动回滚。

Spring的API设计基本上根据英文翻译就能知道作用:Required:必须的。说明必须要有事务,没有就新建事务。supports:支持。说明仅仅是支持事务,没有事务就非事务方式执行。mandatory:强制的。说明一定要有事务,没有事务就抛出异常。required_new:必须新建事务。如果当前存在事务就挂起。not_supported:不支持事务,如果存在事务就挂起。never:绝不有事务。如果存在事务就抛出异常。

以上是关于spring事务的主要内容,如果未能解决你的问题,请参考以下文章

Spring本地事务

如何手动开启spring事务

spring的读写事务和只读事务的区别

什么叫做spring的声明式事务

Spring框架--Spring事务管理和Spring事务传播行为

Spring框架--Spring事务管理和Spring事务传播行为