Резюме: мне нужно экспортировать некоторые CSV-файлы со строками, сгенерированными во время пакетного экспорта.
У меня уже есть JdbcItemreader для получения данных из моей БД. Процессор форматирует выходные данные в требуемый формат. И у меня есть базовый c FlatFileItemWriter, который пишет CSV-файлы
Вот как выглядят мои экспортированные CSV-строки:
040010;0006765;0001420;0008014;+00000018,00;+00000000,00;+00000018,00;+00000000,00;m06;100220;000014;030;CNAME;30;32
040010;0006765;0001420;0008014;+00000018,00;+00000000,00;+00000018,00;+00000000,00;m06;100220;000014;030;CNAME;30;32
Я знаю, что эти строки выглядят ужасно, но это это требование от другого CSV Importer. Теперь мне нужно вычислить «сумму строк», и добавить их перед двумя строками с одинаковыми идентификаторами. Рассчитанная «строка суммы» должна выглядеть следующим образом:
040010;0006765;0001420;0008014;+00000036,00;+00000000,00;+00000036,00;+00000000,00;m06;100220;000014;030;CNAME;30;31
Таким образом, окончательный результат должен выглядеть так:
040010;0006765;0001420;0008014;+00000036,00;+00000000,00;+00000036,00;+00000000,00;m06;100220;000014;030;CNAME;30;31
040010;0006765;0001420;0008014;+00000018,00;+00000000,00;+00000018,00;+00000000,00;m06;100220;000014;030;CNAME;30;32
040010;0006765;0001420;0008014;+00000018,00;+00000000,00;+00000018,00;+00000000,00;m06;100220;000014;030;CNAME;30;32
Вот мои вопросы:
- возможно ли добавить строки между другими строками в CSV-файле через FlatFileItemWriter? или я должен сгенерировать строки суммы перед тем, как записать файл?
- Возможно ли как-то получить доступ к полному блоку данных в ItemWriter / Processor? так что я могу добавить новые строки в чанк перед записью их в файл?