春季批处理将动态文件名作为JobParameter传递

时间:2019-03-10 21:52:40

标签: shell spring-batch

Hello Iwant使用(ksh)Shell脚本开发一个Spring Batch项目; Shell脚本扫描一个文件夹,然后将输入文件名发送给spring batch(发送请求)。 如果spring batch retuen失败,则shell脚本会将邮件发送到管理系统。

Shell脚本代码:

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:0)

  

spring batch如何接收文件名并进行处理?

如果使用Spring Boot创建作业的可运行jar(似乎是这种情况),则可以将作业参数作为键/值对传递。这是一个带有filename参数的示例:

java -jar myjob.jar filename=/path/to/file

查看您的shell脚本,可能类似于:

java -jar testmultiple.jar filename=$i

如果您不使用Spring Boot(这不是您的情况,但我在这里引用以供参考),您还可以将作业参数作为键/值对传递给CommandLineJobRunner类:

java org.springframework.batch.core.launch.support.CommandLineJobRunner myJobContext.xml myJob filename=/path/to/file

希望这会有所帮助。