0

我有一个执行以下操作的 Spring-Batch 流程:

  1. 步:
    1. 将 XML 抓取到临时表中(JibX 到 Hibernate)。
    2. 验证暂存数据的初始状态
    3. 犯罪
  2. 步:
    1. 将登台表转换为登台(全部在 SQL 中)。
    2. 验证暂存数据的最终状态。
    3. 犯罪。
    1. 将 staging 转换为仓库(全部在 SQL 中)。
    2. 证实
    3. 犯罪

因为我的数据是一大块,所以没有更多的数据出现并填满我的舞台表。这让我可以奢侈地改变步骤并在此过程中放弃交易。(也允许我分块步骤 1-1)

我对 JMS 版本的总体想法是接受 JMS 消息并使用它将数据放入暂存表中,然后触发 Job 执行我们现在所做的验证,然后转换为仓库。然后使用工作的成功/失败来推动我对项目发件人的响应。

不幸的是,Spring Batch 不(直接)支持作业级事务的想法,那么有没有比将所有小任务填充到事务性 ur-tasklet 中更好的接受方式呢?

4

0 回答 0