我在一个巨大的JSON文件中,每个文件夹约200个文件,每个文件约300 mbs。 我需要编写Spring批处理来读取文件并一个接一个地处理。
基本上是指一次读取一个文件,然后运行处理器,然后运行编写器,然后读取下一个文件,该文件基本上是客户数据和活动转储,每个文件包含多个用户数据和许多文件。像下面一样
[{
"cutomerId":123,
"customerName":"bla babha",
"phoneNumber" : 5060974321,
..
,,
},{
"cutomerId":123,
"customerName":"bla babha",
"phoneNumber" : 5060974321,
..
..
}
]
由于空间问题,我无法一次读取所有文件。
这可能吗?什么是配置。
请帮助。
答案 0 :(得分:0)
Spring Batch v4.1引入了JsonItemReader,您可以使用它来读取json文件。有关Json支持的更多详细信息,请参见参考文档的JSON Item Readers And Writers部分。
此读者可以用作MultiResourceItemReader的委托人(如评论中的Luca Basso Ricci所述)来读取目录中的多个json文件。您可以找到示例here。该示例显示了FlatFileItemReader
作为委托,但是您可以将类似的配置与JsonItemReader
一起使用。
希望这会有所帮助。