我的春季批处理作业从文件夹中读取csv文件(1个文件夹= 1个作业,1个文件夹= 1个工作单元)。我需要读取这些数据,并使用来自外部端点的信息来丰富它们。显然,从外部端点获取每个CSV行的信息不是一个好主意,因为应用程序可以处理大量文件。但是无论如何,我需要执行一些对远程端点的请求,但是请求取决于CSV文件的内容。假设名称为merchantId的列在哪里。对于每个merchantId,我必须执行对远程端点的请求,并使用响应中提供的数据丰富相应的csv行。所以我在春季批处理中需要一些工具来收集所有merchantId,然后找到取决于merchantId的相应行

春季批处理我该怎么办?也许春季整合可以以某种方式帮助我?

最佳答案

我认为这是您工作中额外的步骤,只能将所有这些merchantIds读入Set。呼叫所有服务,并将数据存储在Map中的某个位置。下一步可以再次读取这些文件,并从该merchantId中通过其Map获取商家详细信息。从源数据角度来看,不确定该方法的效果如何,但是通过这种方式,您肯定只能调用一次外部服务。

另外,我不确定是否可能不会再次重新读取这些文件。虽然您可能会遇到内存不足错误的情况,但是...

09-05 16:53