我需要拆分输入文件,其中包含不同长度的记录并键入一些bean。我可以使用CompositeItemReader将每条记录映射到不同的bean。但这些记录之间存在一些亲子关系。我想形成一个包含子bean的bean。任何帮助表示赞赏。
这是我的示例输入文件。
AB,01,05,HHGFG,05 CD,452,63,FDD,07,54,76,EQWED PT,GGG,76,YYY CD,08,06,ASW,97,55,66,BT AB,96,87,KKK,03 PT,TIPWQ,19,Y当量 PT,ROPRG,39,PRVM
这里AB被视为父记录。我的片段以AB *,CD *,PT *
开头答案 0 :(得分:3)
创建顶级域对象是ItemReader
的责任,因此这种类型的聚合应该在阅读阶段完成。
在SB-sample-projects中有一个multilineOrder示例,其中有一个关于如何解决此类问题的框架;当然你必须手动解决#34;对象之间的父/子关系和阅读时管理错误
Spring Batch :Aggregated reader / writer Issue