SpringBoot 在一个方法里同时实现Mysql 和 Mongo 事务回滚

1,165 阅读1分钟

 加入如下配置即可

@Configuration
public class TransactionConfig {

    @Bean
    MongoTransactionManager mongoTransactionManager(MongoDbFactory mongoDbFactory){
        return new MongoTransactionManager(mongoDbFactory);
    }

    @Bean
    DataSourceTransactionManager transactionManager(DataSource  dataSource) {
        return new DataSourceTransactionManager(dataSource);
    }

    @Bean
    @Primary
    public PlatformTransactionManager chainedTransactionManager(MongoTransactionManager mongoTransactionManager,
                                                                DataSourceTransactionManager dataSourceTransactionManager){
        return new ChainedTransactionManager(mongoTransactionManager,dataSourceTransactionManager);
    }

}