繁体   English   中英

具有可选数据库写入的 Spring 批处理复合项目编写器

[英]Spring batch composite item Writers with optional database writes

我有执行以下步骤的弹簧批处理作业

  1. 从数据库读取
  2. 处理记录并从其他系统获取相关详细信息
  3. 确定要更新的目标数据
  4. 用于多个目标的数据库的复合项目编写器(目前我有两个目标表,两个 jdbc 编写器)

现在的问题是,如果任何 jdbc 项目写入器由于条件不匹配或被跳过而未更新行,则此复合项目写入器将失败。

用例是

  1. 要跳过所有项目编写者 - 这是通过从处理器返回空对象来完成的
  2. 所有 Item Writers 更新 - 没问题
  3. 有些 Writer 需要更新,有些需要跳过 - 需要帮助来解决这个问题。

将每个块包装在事务中的想法是能够将整个项目块作为一个单元进行处理:要么提交所有项目,要么不提交任何项目(全有或全无语义)。

有些 Writer 需要更新,有些需要跳过 - 需要帮助来解决这个问题。

如果您需要这样的细粒度控制,则需要创建自定义编写器。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM