在Spring Batch中将少数csv文件中的数据导入数据库

时间:2016-07-15 15:48:03

标签: spring-batch

从Spring Batch中的几个csv文件导入数据的最佳方法是什么?我的意思是一个csv文件响应数据库中的一个表。 我为每个表创建了一个批处理配置类,每个表都有自己的作业和步骤。 有没有任何解决方案以更优雅的方式做到这一点?

1 个答案:

答案 0 :(得分:1)

有多种方法可以解决问题,但最简单的工作看起来像:

  • FlatFileItemWriter读者使用DelmitedLineTokenizerBeanWrapperFieldSetMapper阅读文件
  • 处理器,如果您需要进行任何其他验证/过滤/转换
  • JDBCBatchItemWriter插入/更新目标表

这里的an example包含有关特定依赖项,配置等的更多信息。该示例使用上下文文件配置而不是基于注释,但它应该足以向您展示。

更复杂的解决方案可能是具有分区步骤的单个作业,该步骤扫描输入文件夹中的文件,并利用参考表/架构信息为其找到的每个文件创建读取器/写入器步骤。

您可能还想在完成后考虑如何处理文件...删除它们?压缩他们?