Spring 事务实现

2019-06-14  本文已影响0人  ryancao_b9b9

一、Spring两类事务管理

1、编程式事务管理

1.1、获取事务管理对象


@Autowired

@Qualifier("oracleTransactionManager")

private PlatformTransactionManagerplatformTransactionManager;

1.2、获取事务定义

DefaultTransactionDefinition def = new DefaultTransactionDefinition();

1.3、设置事务隔离级别,开启新事务

def.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW);

1.4、获得事务状态

TransactionStatus status = platformTransactionManager.getTransaction(def);

1.5、提交事务

platformTransactionManager.commit(status);

1.6、回滚事务

platformTransactionManager.rollback(status);

2、声明式事务管理
2.1、开启事务

@EnableTransactionManagement

2.2、申明事务

@Transactional

二、多数据源事务管理配置
1、编程式

@Autowired
@Qualifier("oracleTransactionManager")
private PlatformTransactionManager platformTransactionManager;

2、声明式

    @Transactional(
              value = "oracleTransactionManager", 
              rollbackFor = RuntimeException.class, 
              propagation = Propagation.REQUIRES_NEW
        )

事务详细说明

上一篇下一篇

猜你喜欢

热点阅读