此版本仍在开发中,尚未被视为稳定版本。对于最新的稳定版本,请使用 Spring Batch 文档 5.1.2spring-doc.cn

此版本仍在开发中,尚未被视为稳定版本。对于最新的稳定版本,请使用 Spring Batch 文档 5.1.2spring-doc.cn

在单个 .假设 文件都具有相同的格式,因此支持这种类型的 input 进行 XML 和平面文件处理。请考虑目录中的以下文件:StepMultiResourceItemReaderspring-doc.cn

file-1.txt  file-2.txt  ignored.txt

file-1.txt 和 file-2.txt 的格式相同,出于业务原因,应为 一起处理。可以通过以下方式读取两个文件 使用通配符。MultiResourceItemReaderspring-doc.cn

以下示例演示如何在 Java 中读取带有通配符的文件:spring-doc.cn

Java 配置
@Bean
public MultiResourceItemReader multiResourceReader() {
	return new MultiResourceItemReaderBuilder<Foo>()
					.delegate(flatFileItemReader())
					.resources(resources())
					.build();
}

以下示例演示如何读取 XML 中带有通配符的文件:spring-doc.cn

XML 配置
<bean id="multiResourceReader" class="org.spr...MultiResourceItemReader">
    <property name="resources" value="classpath:data/input/file-*.txt" />
    <property name="delegate" ref="flatFileItemReader" />
</bean>

引用的委托是一个简单的 .上面的配置是 来自两个文件的 input,处理回滚和重启场景。应该注意的是, 与任何 一样,添加额外的输入(在本例中为文件)可能会导致 重新启动时出现问题。建议批处理作业与自己的个人作业一起使用 目录,直到成功完成。FlatFileItemReaderItemReaderspring-doc.cn

输入资源排序 by using 以确保在重启场景中的作业运行之间保留资源排序。MultiResourceItemReader#setComparator(Comparator)
输入资源排序 by using 以确保在重启场景中的作业运行之间保留资源排序。MultiResourceItemReader#setComparator(Comparator)