Spring批量JDBCreader标记为已读

Spring Batch JDBC reader mark as read

我正在寻找一种很好的方法,可以从 spring 中的 JDBC 数据源批量导出到 csv 文件,然后上传到 FTP 并将行标记为从读取 table(存在导出日期列)。

我找不到一种交易方式来做到这一点,以便我们实际上仅在文件上传成功时将行标记为导出。

您需要一个两步作业。
第一步: 标准读取(从 JDCB)、处理(从 CSV 条目转换记录)和常规写入(使用 FlatFileItemWriter)。
第二步: 使用 Spring 集成将文件上传到 FTP。

关于列 exportdate 您可以实现从 ItemWriteListener.afterWrite 更新列的目标,因为它是

called after ItemWriter.write(java.util.List). This will be called before any transaction is committed, and before ChunkListener.afterChunk(ChunkContext)

希望对您有所帮助