2017-10-15 268 views
0

我正在使用Spring Batch并为我的批处理过程定义作业,但问题是我需要从特定目录读取80.000 jpeg文件的名称作为输入,想要读取例如每块1000。 我也听说过这样做的Spring Integration,但我不知道这是否正确。 如果我采取正确的做法,请引导我。读取数千个jpeg文件的名称作为Spring批处理的输入

谢谢。

UPDATE:

我应该取回的所有文件到一个集合结构像列表或其他什么东西时,我想我的初始化自定义项阅读器?这是最佳吗? 我想根据每个文件的名称从数据库中一次读取项目。我应该怎么做JpaPagingItemReader

回答

0

这真的取决于你想用JPEG来做什么。根据您对每块大小为1000的分块感兴趣,除非您需要某种形式的编排功能(例如在文件出现时运行作业),否则确实没有任何理由需要Spring集成。

只需使用一个ItemReader,并在1000配置步骤块你甚至可以划分他们,如果他们可以并行Spring Batch的使用范围内开箱的组件来处理。

+0

我想读取每个jpeg文件的名称作为输入,并根据名称在数据库中查找记录。 –

+0

我的答案不会因此而改变... –

+0

而且我还想跟踪读取jpeg文件,并知道在中途工作是否损坏,读取或不读取jpeg文件。 –

0

是的,Spring Integration FileReadingMessageSource确实可以用于此任务。读取的文件为发送消息的​​。您可以使用maxMessagesPerPoll = 1000来获得每个轮询任务的最大值。

如果您确实需要将它们合并成一条消息,则需要一个aggregator

对不起,我不知道Spring Batch这么好从这个角度给你一些建议。

+0

'spring-batch-integration'提供了可以从集成流程中调用的作业启动消息处理程序和网关。 –

相关问题