Spring Batchフレームワークはデータをチャンクで処理することを理解しました。しかし、Javaを使用して同じチャンク機能を実現できる場合、なぜバッチフレームワークに移行する必要があるのかと考えていました。
スプリングバッチフレームワークに移行する理由が他にもある場合は、どなたか教えていただけますか?
あなたの質問を少し言い換えて、これがそれを解決するかどうか見てみましょう。
Spring Batchは、バッチアプリケーションを構築するときに自分で処理する必要があると何を提供しますか?
Spring BatchはJSR-352(Javaバッチ仕様)のベースとして機能し、その仕様が公開されたため、Java space。とは言え、基本的なJavaが行うことの範囲外で、Spring Batchが提供する多くのことがまだあります。
「基本」バッチジョブ内
単純なバッチジョブの範囲内で、Spring Batchは、すべてのエンタープライズカテゴリでテストされたユーティリティと実装のコレクションを提供します。次に例を示します。
ItemReader
および15 ItemWriter
の実装。これらはすべて宣言型I/Oオプションを提供するため、ステートフルなリーダーとライターのためにコードを記述してテストする必要はありません。Tasklet
(JSR-352のBatchlet
に相当するSpring Batchの実装)のコレクション。シェルコマンドの実行やHadoopとのインターフェースの実装も含まれます。追加の利点
Spring Batchがテーブルにもたらすものの上記の例に加えて、それははるかに進んでいます:
私は個人的に、バッチ処理をプログラミングの「設定したら忘れる」モデルと見なしています。魅力的ではありませんが、バッチ処理は非常に便利な処理モデルであり、多くの人が理解するよりも場所で役立ちます。 Spring Batchは、堅牢なバッチジョブをできるだけ簡単に開発できる環境を提供します。