java事务相关知识汇总三

Spring事务的传播属性(Propagation):

REQUIRED:支持事务,如果当前线程已存在事务,按当前事务执行,没有当前事务会创建一个事务继续执行线程

SUPPORTS:支持事务,如果当前线程有事务,会按照事务执行。没有事务,则按照无事务执行

MANDATORY:必须支持事务,如果不存在事务抛异常

REQUIRES_NEW:创建一个新事务,如果当前线程存在事务会被禁止

NOT_SUPPORTED:以无事务状态运行,不管当前线程是否存在事务

NEVER:以无事务运行,当前线程存在事务抛异常

NESTED:在嵌套事务中执行,当前线程已存在事务。

分布式下事务处理:

java下JTA规范通过UserTransaction接口实现分布式事务的支持

SpringBoot下有Atomikos和Bitronix下的XA resouces实现分布式事务

分布式下消息补偿机制,最大通知原则实现,分布式事务

TCC事务补偿机制
 

注意:

Spring 的事务隔离级别,实际上配置在jdbc的jar包中Connection类下。

猜你喜欢

转载自my.oschina.net/u/1017791/blog/2907094