我必须使用Spring Batch将数据从文件(Excel)同步到数据库(MySQL)。
将逐个记录处理文件。添加和更新数据库记录工作正常,但我想知道如何检测和删除从文件中删除的数据库中的条目?
我考虑实施这个:
您知道如何收集所有已处理的主键并将其传递到最后一步吗? 或者你推荐另一种实现方式吗?
谢谢, 帕特里克
更新:我不允许更改数据库表。
答案 0 :(得分:0)
使用列标记更新/添加的记录 在主步骤之后创建一个新的,删除未标记的记录。
如果不能选择DB模式修改:
步骤1.将主键从DB转储到CSV(original.csv)
步骤2.创建/更新DB并将更新数据的主键存储到CSV(updated.CSV)
在步骤2之后。创建差异文件:原始减去更新(diff.CSV)
步骤3.读取diff.CSV并通过PK