15°

Spring

Spring IOC

 

Spring 事务


@Transactional(
isolation-Isolation    //事务的隔离级别
propagation-Propagation    //事务的传播行为

noRollbackFor-Class[]    //哪些异常事务可以不回滚
noRollbackForClassName-String[]    //String 全类名
noRollbackFor-Class        //哪些异常事务需要回滚
RollbackForClassName-String[]    

readOnly-boolean    //设置事务为只读事务
timeout-int    //超时,事务超出指定执行时长后自动终止并回滚
)

数据库并发问题
脏读    :读取了未提交的数据,修改过值并且回滚了
幻读:第一次读取的数据和第二次读取的数据不一致
不可重复读:第一次读取的数据值和第二次读取的数据值不一致

事务的隔离级别(一个事务与其他事务隔离的程度称为隔离级别)
读未提交(READ UNCOMMITTED):允许读取未提交的修改
读已提交(READ COMMITTED):只能读取已提交的修改
可重复读(REPEATABLE READ):可以多次从一个字段中读取到相同的值,事务执行期间禁止其他事务对其更改
串行化(sERIALIZABLE):事务执行期间,禁止任何事务对当前表做添加、修改、删除等操作

各个隔离级别解决并发问题的能见力如下表:

  脏读 幻读 不可重复读
READ UNCOMMITTED
READ COMMITTED
REPEATABLE READ
SERIALIZABLE


 

本文由【何志杰-】发布于开源中国,原文链接:https://my.oschina.net/u/4159436/blog/3160202

全部评论: 0

    我有话说: