Spring 批处理错误没有 CSV 行输入

Spring Batch Error Doesn't Have CSV Row Input

我无法将在所有阶段(解析阶段、业务错误、数据库错误、无效数据错误)中注册的错误存储在 csv 文件中

原因:无法检索 csv 输入行,因为错误方法只有异常作为参数,而不是实际的 csv 行数据。 (例如:单独的解析异常有 inputString 方法(),其余的错误处理阶段没有输入)

如何在spring批处理作业的所有阶段获取输入行或正在处理的行??

我需要使用以下内容创建错误 csv CSV 行列 + 行号 + 错误信息 + 原因

如果在读取过程中发生错误,则将 FlatFileParseException 传递给 SkipListener#onSkipInRead。此异常为您提供了行号以及从文件中读取的原始行。

如果您想在处理过程中拦截错误,即在 SkipListener#onSkipInProcess 中,那么您可以编写一个异常 class,其中包含错误报告所需的所有详细信息。该项目可以设计为携带它所读取的原始行。