SpringBatch-如何将文件本身作为一个项目进行处理?
SpringBatch- How to process files itself as a Item?
我是 spring 批量开发的新手。我有以下要求。
将有一个带有 zip 文件的 s3 源,每个 zip 文件将包含多个 pdf 文件和 xml 个文件。[例如:100 个 pdf 和 100 个 xml 个文件](xml 个文件将包含有关pdf的数据)
Batch 需要读取 pdf 文件及其关联的 xml 文件并将它们推送到 rest service/db.
当我查看示例时,大部分内容都涵盖了如何从文件中读取一行并对其进行处理。在这里,我将项目本身作为文件。我想读取一个 pdf 文件(以字节为单位)+ xml 文件(转换为 pojo)作为设置并将其一个一个地推送到休息服务。
现在,我正在单个 tasklet 中进行所有读取和处理。但我相信会有更好的解决方案来实施它。求推荐,谢谢。
面向块的处理模型要求您首先定义项目是什么。在您的情况下,一种选择是将项目视为 PDF 文件(数据)及其关联的 XML 文件(元数据)。您可以创建一个代表此类项目的 class 和一个自定义项目 reader。一旦到位,您可以在面向块的步骤中使用 reader,并使用处理器或编写器将数据发送到您的 REST 端点。
我是 spring 批量开发的新手。我有以下要求。 将有一个带有 zip 文件的 s3 源,每个 zip 文件将包含多个 pdf 文件和 xml 个文件。[例如:100 个 pdf 和 100 个 xml 个文件](xml 个文件将包含有关pdf的数据) Batch 需要读取 pdf 文件及其关联的 xml 文件并将它们推送到 rest service/db.
当我查看示例时,大部分内容都涵盖了如何从文件中读取一行并对其进行处理。在这里,我将项目本身作为文件。我想读取一个 pdf 文件(以字节为单位)+ xml 文件(转换为 pojo)作为设置并将其一个一个地推送到休息服务。
现在,我正在单个 tasklet 中进行所有读取和处理。但我相信会有更好的解决方案来实施它。求推荐,谢谢。
面向块的处理模型要求您首先定义项目是什么。在您的情况下,一种选择是将项目视为 PDF 文件(数据)及其关联的 XML 文件(元数据)。您可以创建一个代表此类项目的 class 和一个自定义项目 reader。一旦到位,您可以在面向块的步骤中使用 reader,并使用处理器或编写器将数据发送到您的 REST 端点。