spring 事务注解

2020/09/15 09:59
阅读数 39

Transactional 注解的属性

  • name 当在配置文件中有多个 TransactionManager , 可以用该属性指定选择哪个事务管理器。
  • propagation 事务的传播行为,默认值为 REQUIRED。
  • isolation 事务的隔离度,默认值采用 DEFAULT。
  • timeout 事务的超时时间,默认值为-1。如果超过该时间限制但事务还没有完成,则自动回滚事务。
  • read-only 指定事务是否为只读事务,默认值为 false;为了忽略那些不需要事务的方法,比如读取数据,可以设置 read-only 为 true。
  • rollback-for 用于指定能够触发事务回滚的异常类型,如果有多个异常类型需要指定,各类型之间可以通过逗号分隔。
  • no-rollback- for 抛出 no-rollback-for 指定的异常类型,不回滚事务。

  propagation 属性(事务传播性)

  •   REQUIRED 支持当前已经存在的事务,如果还没有事务,就创建一个新事务。
  •   MANDATORY 支持当前已经存在的事务,如果还没有事务,就抛出一个异常。
  •   NESTED 在当前事务中创建一个嵌套事务,如果还没有事务,那么就简单地创建一个新事务。
  •   REQUIRES_NEW 挂起当前事务,创建一个新事务,如果还没有事务,就简单地创建一个新事务。
  •   NEVER 强制要求不在事务中运行,如果当前存在一个事务,则抛出异常。
  •   NOT_SUPPORTED 强制不在事务中运行,如果当前存在一个事务,则挂起该事务。
  •   SUPPORTS 支持当前事务,如果没有事务那么就不在事务中运行。
展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部