开发者社区 > 云原生 > 中间件 > 正文

在Seata中AT 模式和 Spring @Transactional 注解连用时需要注意什么 ?

在Seata中AT 模式和 Spring @Transactional 注解连用时需要注意什么 ?

展开
收起
冲冲冲c 2024-07-22 15:48:25 94 0
1 条回答
写回答
取消 提交回答
  • @Transactional 可与 DataSourceTransactionManager 和 JTATransactionManager 连用分别表示本地事务和XA分布式事务,大家常用的是与本地事务结合。当与本地事务结合时,@Transactional和@GlobalTransaction连用,@Transactional 只能位于标注在@GlobalTransaction的同一方法层次或者位于@GlobalTransaction 标注方法的内层。这里分布式事务的概念要大于本地事务,若将 @Transactional 标注在外层会导致分布式事务空提交,当@Transactional 对应的 connection 提交时会报全局事务正在提交或者全局事务的xid不存在。此回答整理来自钉群“3群-Apache Seata(incubating) 开源讨论群”。

    2024-07-22 21:05:06
    赞同 展开评论 打赏

为企业提供高效、稳定、易扩展的中间件产品。

相关电子书

更多
workshop专场-微服务专场-开发者动手实践营-微服务-Spring Cloud Alibaba 微服务全家桶体验 立即下载
云栖社区特邀专家徐雷Java Spring Boot开发实战系列课程(第20讲):经典面试题与阿里等名企内部招聘求职面试技巧 立即下载
微服务架构模式与原理Spring Cloud开发实战 立即下载