複数のStepをひとまとまりで扱うには?(flow) | Java Springの逆引きメモ

Java Springの逆引きメモ

JavaのSpring frameworkのメモを書いていきます!
初心者の勉強ノートなので間違いがあるかもしれませんが、何かヒントになることがあれば幸いです。

前回の記事で、stepの処理の記述の仕方を見ました。


 ・Stepを使って処理を書くには?



もし、複数のstepをひとまとまりで扱えて、色々な箇所でかたまりごと使い回せたら楽ですよね。

この記事では、その方法を見ていきましょう!



【サンプル (記述イメージです)】


<job id="job1" xmlns="http://www.springframework.org/schema/batch "  

 incrementer="jobParametersIncrementer">


  <flow id="job1.flowCopy" parent="flow.copy" />

</job>



<flow id="flow.copy" xmlns="http://www.springframework.org/schema/batch ">
 <step id="step.clear" parent="simpleStep" next="step.create" >
   <tasklet ref="methodInvokingTasklet" />
 </step>
 <step id="step.create" parent="simpleStep">
   <tasklet>
     <chunk reader="fileReader" writer="dbWriter" />
   </tasklet>
 </step>
</flow>



【説明】

stepの処理のかたまりを扱うにはflowタグを使用します。

上記のように、jobタブの外部で定義しておけば良いかと思います。


そして、job内でflowを使用するときは、やはりflowタグを使用します。

parentにflow名を指定するだけですビックリマーク


もちろん、job内のflowタグの前後にstepタグを記述することもできます。


簡単ですよね。




参照:

・トップ

・SpringBatch機能について

・実際に作成するものとは(Stepの概念について)

・CommandLineJobRunnerとは?

・Spring Batchを起動するには? (基本編)

・Stepを使って処理を書くには?