java - Spring Batch:从一个源读取数据,但将不同的数据写入 2 个单独的文件
问题描述
我编写了一个 spring 批处理程序来读取/处理/写入数据到单个文件中。我有一个新的业务需求,其中从我正在阅读的相同数据中,我必须使用不同的数据构建另一个列表并处理/格式化数据并将其写入单独的文件中。
我研究了 MultiFormatItemWriter ,其中我也可以定义单独的 FlatFileItemWriters 和 CompositeItemWriter ,但我无法理解如何将不同的列表发送到这些不同的文件编写器。
如果可能,请使用示例代码建议一些选项。
解决方案
ClassifierCompositeItemProcessor
和的组合ClassifierCompositeItemWriter
是您正在寻找的。分类器允许您根据它们的类将项目路由到正确的处理器/写入器。
你可以在这里找到一个例子。
推荐阅读
- laravel - Redis + Docker:PDOException:找不到驱动程序
- php - 使用一个 Webroot 并按 ID 区分子域
- javascript - 使用 Controller As 更新回调中的属性
- javascript - 后面代码中的 Javascript 警报
- eclipse - Eclipse:jsp中的内容辅助并从jar中包含
- sql - 左连接三个表
- java - Apache Camel - 如何处理一个端点到另一个端点之间不成功的消息路由?
- c# - 如何在 iPhone 中显示/查找从 xamarin.ios 下载的图像?
- eclipse - 在 Eclipse 编辑器中转到上一个文件的命令
- docusignapi - 如何分配信封发件人