java– 使用2个不同的数据源:Spring批处理

java– 使用2个不同的数据源:Spring批处理,第1张

概述我有2个不同的数据源,一个用于读取,另一个用于写入如下结果:> ItemReader应该从dataSource_1获取数据.> ItemWriter应该将数据写入dataSource_2.知道读者和作者在同一个tasklet中.根据文档,我们可以在tasklet上配置单个事务管理器在这种情况下,我如何在这里使用事务管理器?我不能依赖容器,我不使用

我有2个不同的数据源,一个用于读取,另一个用于写入如下结果:

> ItemReader应该从dataSource_1获取数据.
> ItemWriter应该将数据写入dataSource_2.

知道读者和作者在同一个tasklet中.

根据文档,我们可以在tasklet上配置单个事务管理器

在这种情况下,我如何在这里使用事务管理器?

我不能依赖容器,我不使用ORM层(JPA ..),我使用直接JDBC驱动程序读入数据库1并写入database2.

当前conf:

我如何使用Spring Batch配置JTA / XA事务(Atomikos)?最佳答案忘记Spring Batch.

假设您需要编写一个从一个datasource1读取的应用程序服务,并写入datasource2,您需要做什么?

分布式事务是您的最佳选择.这当然涉及额外的配置.如果您在J2EE容器(Websphere,Weblogic,JBoss等)中,那么它们提供的事务管理器应该能够处理分布式事务.您应该能够在Spring中为每个平台找到相应的TransactionManager实现.您需要的只是配置数据源(也应该在容器下)以使用XA感知驱动程序,并在您的应用程序中,使用相应的事务管理器,并通过JNDI查找XA感知数据源

但是,如果您不能依赖容器(例如,您正在编写独立应用程序等),则需要找到能够执行此 *** 作的事务管理器. Atomikos是最着名的免费JTA / XA库之一.

当然,如果您百分之百确定所有事务感知 *** 作都在datasource2中,您可以考虑仅将数据源事务管理器用于datasource2,但老实说,这不是我建议的首选方法.

总结

以上是内存溢出为你收集整理的java – 使用2个不同的数据源:Spring批处理全部内容,希望文章能够帮你解决java – 使用2个不同的数据源:Spring批处理所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1245798.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)