首页 > 解决方案 > 如何将数据传递到spring批处理ItemProcessor?

问题描述

我有一个 CSV 文件,其中包含数据记录(案例),为此我创建了一个caseDTO对象,但是某些属性caseDTO必须是来自文件名中包含的数据的字段(每个文件都必须有一个具有严格结构的名称,其中包含一些数据)。

我想要实现的是将文件名中包含的数据传递给项目处理器,我将在其中将此数据附加到每个文件中caseDTO,然后再将其传递给项目编写器。

itemProcessor当我从控制器启动作业时,有谁知道如何将数据传递给一个步骤?

提前致谢。

标签: javaspringspring-bootspring-batch

解决方案


最简单的解决方案是在作业参数中设置动态参数,以便步骤的编写器、处理器、读取器可以访问它。通过注入它们的值如下

@Value("#{jobParameters['fileName']}") public void setFileName(final String name) { //... }


推荐阅读