首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Spring分布式数据库事务

Spring分布式数据库事务
EN

Stack Overflow用户
提问于 2016-12-16 18:13:07
回答 1查看 796关注 0票数 1

我目前正在使用Spring (没有Maven)开发一个web应用程序。我需要的是在两个本地数据库之间创建一个分布式事务,以便代码在(理论上)2阶段提交中更新所有这些数据库。

现在,由于我是为一个学校项目做的,所以我在一个简单的环境中,只需要从一个db中的一个表中取一行,然后把它放在另一个db上的表中,当然是原子性的(理论上,这样的事务应该是分布式的,因为我使用的是两个不同的数据库,而不仅仅是一个)。

我的问题是,如何部署一个Spring,它首先连接到两个MySQL数据库,然后进行分布式事务处理?我应该使用一些外部库,还是只使用Spring框架就可以实现所有这些?在这种情况下,请您能给我一个例子或指南来做这个吗?

预先谢谢你的帮助:)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-12-16 19:48:57

  • Spring有一个接口PlatformTransactionManager,它是一个抽象的接口,它有许多实现,如DataSourceTransactionManager、HibernateTransactionManager等。
  • 由于您使用的是分布式事务,所以需要使用JTATransactionManager。
  • spring提供的这些TransactionManagers是其他框架提供的实现的包装器。
  • 现在,如果是JTA,您将使用应用服务器或独立的JTA实现,比如Atomikos
  • 以下是以下步骤:
  • 使用应用服务器或独立的JTA实现在spring中配置事务管理器
  • 春季启用事务管理
  • 然后在代码中配置方法上方的@Transactional注释
  • 请看以下链接
  • http://docs.spring.io/spring/docs/current/spring-framework-reference/html/transaction.html
  • http://www.byteslounge.com/tutorials/spring-jta-multiple-resource-transactions-in-tomcat-with-atomikos-example
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41190141

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档