目录
1、只读
@Transactional(readOnly = true):当前事务中全部为查询操作才可用
2、超时
@Transactional(timeout= 3): 超时强制回滚,抛出异常(时间为3秒钟)
3、回滚策略
@Transaction(noRollBackFor):
@Transaction(noRollBackForClassName):
4、隔离级别:
@Transaction(isolation = Isolation. )
事务的四大特性:原子性、一致性、隔离性、持久性
1、读未提交:可以读出来还没有提交的事务,会出现脏读
2、读已提交:读出来已经提交的事务,会出现不可重复读
3、可重复读:加锁,事务提交之后才会被其他食物读取到,但是其他事务会操作未加所得数据,导致出现幻读。MySql只能读取自身事务的操作,避免了幻读
4、串行化(序列化):将表进行加锁,避免任何并发问题,性能低下
注:Orcal只有两种:读已提交,串行化(序列化)
5、传播行为:
@Transaction(propagation = REQUIRED):使用调用者事务
@Transaction(propagation = REQUIRES_NEW):使用自己的事务
·