如何从UI发送spring批量块大小

时间:2016-05-31 14:40:43

标签: spring spring-batch

有人可以帮助理解如何从弹簧控制器提供块大小1或10作为变量。 这是否适用于步长范围?或者必须写在@beforeStep?

@Bean

public Step step1() {
    return stepBuilderFactory.get("step1")
            .<Person, Person> chunk(**10**)
            .reader(reader(null))
            .processor(processor())
            .writer(writer())
            .build();
}

1 个答案:

答案 0 :(得分:0)

您尝试这样做的方式无效。为了将值作为作业参数传入,它所设置的对象需要是步骤范围的,并且步骤本身不能是步骤范围。您可以做的是创建一个步骤范围CompletionPolicy,使用它来确定块是否完整。简而言之,将Spring Batch CountingCompletionPolicy配置为步骤范围的bean并使用它配置步骤应允许您通过作业参数设置最大计数。

您可以在此处详细了解CompletionPolicy及其相关实施:http://docs.spring.io/spring-batch/apidocs/org/springframework/batch/repeat/CompletionPolicy.html