Spring 两次不同下载的批次
Spring Batch for two different downloads
我需要为两种不同的下载类型实施 Spring 批处理。根据用户类型,我想为他们提供两种不同的下载结果。我从同一个地方读取它,以相同的方式处理它,但文件内容会有所不同。
我决定为此做两份不同的工作。
问题:
是否可以为这两个作业重用 Reader 和处理器 Bean?
这是可能的,而且非常简单,您只需在作业定义中声明 reader 和处理器 bean,并在您的步骤中通过它们的 ID 调用它们。
下面是 reader 的示例。
Bean 定义:
<bean id="myReader" class="org.springframework.batch.item.file.FlatFileItemReader">
<property name="resource" value="${resourceLocation} />
</bean>
在您的步骤中引用 bean:
<batch:step>
<batch:tasklet>
<batch:chunk reader="myReader" />
</batch:tasklet>
</batch:step>
您可以多次调用此 reader。
我需要为两种不同的下载类型实施 Spring 批处理。根据用户类型,我想为他们提供两种不同的下载结果。我从同一个地方读取它,以相同的方式处理它,但文件内容会有所不同。
我决定为此做两份不同的工作。
问题: 是否可以为这两个作业重用 Reader 和处理器 Bean?
这是可能的,而且非常简单,您只需在作业定义中声明 reader 和处理器 bean,并在您的步骤中通过它们的 ID 调用它们。
下面是 reader 的示例。
Bean 定义:
<bean id="myReader" class="org.springframework.batch.item.file.FlatFileItemReader">
<property name="resource" value="${resourceLocation} />
</bean>
在您的步骤中引用 bean:
<batch:step>
<batch:tasklet>
<batch:chunk reader="myReader" />
</batch:tasklet>
</batch:step>
您可以多次调用此 reader。