事务总结

1.事务
事务具有如下特性:

a:原子性atomicity
c:consistency 连续性
i:isolation 连续性
d:durability 持久性

2.事务隔离级别
               
a;read uncommit :即使一个事务没有提交,但是另外的事务也能查询到没有提交之前的结果
b:read commit:一个事务提交后,别的事务才能读到此次提交的新的值
d: read repeatable :在同一个事务里,先后执行两次同一样的查询,得到的结果是一样的
e:seraliable :序列化。一个事务执行的时候不允许其他事务同时执行

3.没有事务隔离级别,并发执行时,则会发生如下几个情况:

lost update  :两个事务同时更新一行,中间有一个事务失败,则会导致全部更新都失败
               两个事务都对同一行进行更新提交,后一个事务提交的会覆盖第一个事务,                导致第一个事务提交的数据丢失。
dirty read :一个事务开始读取了某行数据
             但是此时另外一个事务对此数据做了更新并没有提交反而回滚了,这会导致第                   一个事务读到的数据 是dirty
unrepeatable read :一个事务对同一行数据重复读取了两次,每次都读到了不同的结果
phantom read :一个事务执行两次查询,结果第二次查询结果中包含了没有在第一次查询结果中出现的结果。

4.JAAVA事务分为:
JDBC事物:
  JDBC事务就是通过jdbc 连接池的连接 中的setAutoCommit(false)  这些方法来设置
JTA 事物: 分布式事务
    一个分布式的事务涉及一个事务管理器和一个或者多个资源管理器。一个资源管理器是任何类型的持久性的数据存储。事务管理器负责协调所有事务参与者之间的通信
   与本地事务相比,XA 协议的系统开销相当大,因而应当慎重考虑是否确实需要分布式事务。只有支持 XA 协议的资源才能参与分布式事务。如果事务须登记一个以上的资源,则需要实现和配置所涉及的资源(适配器、JMS 或 JDBC 连接池)以支持 XA。






 

你可能感兴趣的:(jta)