使用 Spring & Hibernate 的多数据库事务管理

Bha*_*rat 6 java spring hibernate

我想出了一个 Spring & Hibernate 应用程序,它具有对自己的系统数据库的插入/更新,它甚至必须插入/更新具有不同数据库类型的其他系统。

如何在使用不同数据库的同时使用 Hibernate 实现事务管理。

-巴拉特

Dea*_*ark 0

这需要通过运行应用程序的容器(例如 JBoss App Server)来完成,或者您需要连接到其他一些事务管理器,例如 Bitronix。在 JavaSE 应用程序中,您只能“尽最大努力”尝试管理多个数据源之间的事务。

您需要使用 XA 驱动程序定义与两个数据库的连接,然后确保您的事务管理器正在利用两阶段提交。

如果您不熟悉全局事务,请从这里开始:http://docs.spring.io/autorepo/docs/spring/4.2.x/spring-framework-reference/html/transaction.html#transaction-global