<!--LCN分布式事务相关依赖-->
<dependency>
<groupId>com.codingapi</groupId>
<artifactId>transaction-springcloud</artifactId>
<version>${lcn.last.version}</version>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>*</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.codingapi</groupId>
<artifactId>tx-plugins-db</artifactId>
<version>${lcn.last.version}</version>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>*</artifactId>
</exclusion>
</exclusions>
</dependency>
若存在业务方法:a->b b->c b->d,那么开启分布式事务注解的话,需要在各个模块方法上添加@TxTransaction,并且在自己方法上添加@Transactional(因为假如自己有异常也需要回滚)。
@TxTransaction(isStart=true)
@Transactional
public void a(){
b();
}
@TxTransaction
@Transactional
public void b(){
c();
d();
}
@TxTransaction
@Transactional
public void c(){}
@TxTransaction
@Transactional
public void d(){}
开启服务
先开redis
然后开eureka (可以注册到自己建立的服务中心)
然后开tx-manager注册到eureka上 (只是需要将该调度注册进来)
其他服务也都注册到官方下下来的eureka上