java-在运行时动态选择Spring-Batch阅读器

前端之家收集整理的这篇文章主要介绍了java-在运行时动态选择Spring-Batch阅读器 前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我有一个春季批处理工作,可以将各种银行对帐单转换为我的应用程序.每种银行对帐单类型都有一个不同的读取器,而所有这些都只有一个写入器.这项工作非常简单-读取,处理和写入:

<batch:job id="importer" restartable="true">
    <batch:step id="import">
        <batch:tasklet>
            <batch:chunk reader="reader" writer="writer" processor="processor" commit-interval="10" />
        </batch:tasklet>
    </batch:step>
</batch:job>

现在,我希望最终用户提供对帐单文件以及银行信息,然后在运行时选择相应的spring-batch阅读器以运行此作业.理想情况下,如果我可以第一步先阅读并尝试先“猜测”银行表格对帐单格式,那就太好了.但是我离题了.

是否可以在运行作业之前将阅读器注入作业?还是有更好的方法实现我的目标?

最佳答案
您可以从输入参数或属性文件设置阅读器:

<batch:chunk reader="#{jobParameters['reader.beanId']}" writer="writer" processor="processor" commit-interval="10" />

您也可以考虑作业和步骤属性的后期绑定,这是spring-batch step-scope链接

猜你在找的Spring相关文章