Spring batch 通过Spring云数据流UI提供作业参数
Docker中部署了数据流,Spring批处理应用程序作为“任务”部署并转变为任务 我试图为我的任务提供一个年度工作参数。我尝试过使用带有Spring batch 通过Spring云数据流UI提供作业参数,spring-batch,spring-cloud-dataflow,spring-cloud-dataflow-ui,Spring Batch,Spring Cloud Dataflow,Spring Cloud Dataflow Ui,Docker中部署了数据流,Spring批处理应用程序作为“任务”部署并转变为任务 我试图为我的任务提供一个年度工作参数。我尝试过使用带有@ConfigurationProperties注释的属性类,如中所示。然后我通过JobParametersIncrementer将其转换为作业参数 @Bean public Job job() { return this.jobBuilderFactory .get("job") .increm
@ConfigurationProperties
注释的属性类,如中所示。然后我通过JobParametersIncrementer
将其转换为作业参数
@Bean
public Job job() {
return this.jobBuilderFactory
.get("job")
.incrementer(new SampleIncrementer(year))
.start(step())
.build();
}
class SampleIncrementer implements JobParametersIncrementer {
private final Long year;
public SampleIncrementer(final Long year) {
this.year = year;
}
public JobParameters getNext(final JobParameters parameters) {
if (isNull(parameters)) {
return new JobParametersBuilder().addLong("year", year).toJobParameters();
}
if (isNull(parameters.getLong("year"))) {
return new JobParametersBuilder(parameters).addLong("year", year).toJobParameters();
}
return parameters;
}
}
但在步骤的后面找不到作业参数
有没有办法将作业参数从Spring云数据流UI传递到执行
作业参数作为
参数传递,您不需要指定--
前缀。例如,在这种情况下,您需要在参数
部分中指定year=2011
作为参数。作业参数作为参数
传递,而无需指定--
前缀。例如,在这种情况下,您需要在参数
部分中指定year=2011
作为参数。为了澄清,我希望能够使用不同的年份重新运行作业。因此,如果我已经运行了2010年,我可以从一组不同的作业参数开始,其中年份=2011。只是澄清一下,我希望能够使用不同的年份重新运行作业。因此,如果我已经运行了2010,我可以从一组不同的作业参数开始,其中年份=2011。