1

入力ファイルパスなど、ジョブの設定パラメータを設定する方法。私の使用例は、入力ファイルのデータを処理するジョブがいくつかあり、それらのジョブは他のジョブの一部としてトリガーされます。

<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 を使用しているため、独自のジョブ ランチャーに直接アクセスすることはできません。

4

1 に答える 1

1

は、 から必要なジョブ パラメータを抽出できる依存関係としてJobStepを取得できます。私たちが提供する実装は. これにより、ジョブのパラメーターが から取得されます(使用するキーを指定します)。この実装には、サブジョブにパラメーターとして渡されるものに、親ジョブのすべてのパラメーターも含まれます。JobParameterExtractorStepExecutionDefaultJobParametersExtractorStepExecutionExecutionContext

の詳細については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

于 2014-05-08T14:23:09.517 に答える