我正在使用Spring Batch使用2(可能更多,假设为简单2)数据库。 一个用于存储所有作业数据(所有BATCH_ *表)。另一个用于实际运行我的业务逻辑数据。 有些事情我不太明白。
答案 0 :(得分:4)
您可以为任务和作业存储库使用单独的事务管理器。见这里:http://forum.spring.io/forum/spring-projects/batch/39609-using-2-different-datasources-with-spring-batch
因此,需要指定其中两个。
话虽如此,即使你可以使用两个独立的交易经理,但这并不意味着你应该这样做。如果你没有去XA,那么想象如果业务流程成功运行会发生什么,但是工作数据没有被保存。批处理下次运行时,Spring Batch会认为作业失败,并尝试再次运行它。