java中事务的属性

isolation 隔离级别
在这里插入图片描述
隔离级别由低到高为:read-uncommited < read-commited < repeatable-read < serialized-read
特性

 * 安全性:级别越高,多事务并发时,越安全。因为共享的数据越来越少,事务间彼此干扰减少。

* 并发性:级别越高,多事务并发时,并发越差。因为共享的数据越来越少,事务间阻塞情况增多。

并发问题
在这里插入图片描述
propagation传播行为

当涉及到事务嵌套(Service调用Service)时,可以设置:

* SUPPORTS = 不存在外部事务,则不开启新事务;存在外部事务,则合并到外部事务中。(适合查询)

* REQUIRED = 不存在外部事务,则开启新事务;存在外部事务,则合并到外部事务中。 (默认值)(适合增删改)

readonly 读写性

* true:只读,可提高查询效率。(适合查询)

* false:可读可写。 (默认值)(适合增删改)

timeout事务超时时间

当前事务所需操作的数据被其他事务占用,则等待。

* 100:自定义等待时间100(秒)。
* -1:由数据库指定等待时间,默认值。(建议)  

rollback-for 回滚属性

* 如果事务中抛出 RuntimeException,则自动回滚

* 如果事务中抛出 CheckException(非运行时异常 Exception),不会自动回滚,而是默认提交事务

* 处理方案 : 将CheckException转换成RuntimException上抛,或 设置 rollback-for="Exception"
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值