【发布时间】:2020-07-21 16:08:21
【问题描述】:
Spring Batch 中动态步骤创建的完美解决方案。 只是我无法在其中获取参数,这将决定需要执行什么步骤或如何传递步骤数组?
<pre>@Bean
public Job job() {
Step[] stepsArray = // create your steps array or pass it as a parameter
SimpleJobBuilder jobBuilder = jobBuilderFactory.get("mainCalculationJob")
.incrementer(new RunIdIncrementer())
.start(truncTableTaskletStep());
for (Step step : stepsArray) {
jobBuilder.next(step);
}
return jobBuilder.build();
}</pre>
谢谢
【问题讨论】:
-
我猜你从这里拿了这个 sn-p:stackoverflow.com/a/54862683/5019386。
I am not able to get parameters into this:你指的是哪些参数?那些作业参数或参数是否使用-D或其他方式传递给JVM? -
嗨,Hassine,我是你的忠实粉丝。你是对的,我已经完成了代码 sn-p,实际上,我正在尝试从 Db 获取步骤序列(s1、s2、s3 或 S4、S5),并且根据该作业应该配置步骤,因为我需要在上面的代码中获取(步骤数组),如您所见“//创建您的步骤数组或将其作为参数传递”我正在寻找如何将此步骤数组作为参数传递并进入上述函数
-
谢谢!我添加了一个完整示例的答案。希望对您有所帮助。
标签: spring spring-batch