如何在Spring Batch中编写自定义RecordSeparatorPolicy?

时间:2019-01-12 07:30:47

标签: spring-integration spring-batch

我在项目中使用Spring integrationSpring batch,通过spring集成从ftp接收文件,并使用spring batch运行作业来处理文件,我想读取以下格式的文件:
4ByteLength 数据 4ByteLength 数据 4ByteLength 数据...
该文件只有一行,并且可能包含与上述格式相同的一百万条记录,我的问题是,如何用spring batch读取有效的文件?

1 个答案:

答案 0 :(得分:0)

在这种情况下,您不需要自定义RecordSeparatorPolicy,因为当调用isEndOfRecord方法(以检查行是否在记录的末尾)时,整行将已经加载到内存中了,这显然是您不想做的。

您真正需要的是一个自定义项目读取器,该读取器以字节(根据您的要求)而不是行的形式读取项目。

注意:这里有一个类似的问题:Spring Batch process a one 10gb line into separate items