Spring Batch:如何使用spring批处理从sftp服务器读取文件并将其保存到数据库中?

时间:2013-06-27 09:29:17

标签: spring sftp spring-batch spring-integration

我目前的项目基于Spring Batch和Spring集成。

我的目标是使用Spring Batch执行作业流程步骤:

  1. 从SFTP服务器读取文件(步骤1)。
  2. 解密文件(步骤2)。
  3. 将文件保存到数据库中(步骤3)。
  4. 我想把它分成步骤队列(从sftp读取,解密,写入db)。 我还需要保存文件,传输开始时间,传输结束时间,文件大小到DB。

    前几天,我使用Spring集成从sftp服务器轮询文件,然后将其发送到Spring批处理以完成额外的工作。我也无法获得转移开始时间。

    但是现在我的项目主要基于Spring批处理,而不是Spring Integration。

    你能给我一些建议吗?

    或者,您能告诉我如何使用Spring Batch来驱动Spring Integration来读取SFTP文件。

    我怎样才能获得转移开始时间?

    感谢。 :)

1 个答案:

答案 0 :(得分:4)

添加一个tasklet作为第一步;让tasklet调用Spring Integration流程,可能使用sftp outbound gatewayGET文件。

有一个如何在sftp sample中使用网关的示例。

“转移开始时间”将是您调用网关的时间。