首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何为spring batch中的job设置一些配置参数,让它可以被步骤和子作业使用?

如何为spring batch中的job设置一些配置参数,让它可以被步骤和子作业使用?
EN

Stack Overflow用户
提问于 2014-05-08 20:10:27
回答 1查看 4.1K关注 0票数 1

如何为作业设置一些配置参数,例如输入文件路径。我的用例是,我有一些作业处理输入文件中的数据,这些作业作为其他作业的一部分被触发。

代码语言:javascript
复制
<job id="jobA">     
    <step id="stepA" >
        <job ref="jobC"/>
    </step>     
</job>


<job id="jobB">     
    <step id="stepB" >
        <job ref="jobC"/>
    </step> 
</job>


<job id="jobC">     
    <step id="stepC" >
        <tasklet ref="steCTasklet" />
    </step>     
</job>

因此,在这里,JobA和JobB触发jobC。JobC处理JobA和JobB提供的输入文件中的数据。如何为JobA和JobB设置不同的输入文件路径,以便将它们传递给JobC。

我们可以将它作为参数传递给JobA和JobB,但由于JobA和JobB已经修复了这一点,所以我不想从外部将它们作为参数传递。

此外,JobA和JobB中的其他步骤应该可以访问输入文件路径,这些步骤不会触发其他作业。

另外,我使用的是spring-batch-admin,所以我不能直接访问作业启动器,因为它有它自己的。

EN

回答 1

Stack Overflow用户

发布于 2014-05-08 22:23:10

JobStep可以将JobParameterExtractor作为依赖项,允许您从StepExecution中提取所需的作业参数。我们提供的实现是DefaultJobParametersExtractor。这将从StepExecutionExecutionContext中提取作业的参数(由您指定要使用的键)。此实现还包括作为参数传递给子作业的所有父作业的参数。

你可以在下面的链接中阅读更多关于JobParametersExtractor的信息。http://docs.spring.io/spring-batch/trunk/reference/html/configureStep.html#external-flows http://docs.spring.io/spring-batch/trunk/apidocs/org/springframework/batch/core/step/job/JobParametersExtractor.html

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23541392

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档