2011-03-09 17 views
4

週に1回、CSVをデータベースにロードする必要があります。 CSVファイルには2つのテーブルのデータがあるため、必要なデータマッサージがあります。だから私はCSVファイルを少し処理しなければならないでしょう、おそらくそれを2つの異なるCSVファイルに変換し、それをデータベースにロードします。春バッチが過剰ですか

私はすでに石英を設置しています。あなたは仕事をするために春のバッチを使用することは過度のことだろうと思いますか?私はそれをいつ使うべきかと思っています。いつ私は石英豆を処理しなければならないのでしょうか。

答えて

6

スプリングバッチは、が気にする必要がある部分をに減らすため、この種のジョブには最適です。この場合、気になるのはデータをマッサージしてから2つの異なるテーブルに挿入することだけです。 FileItemReaderを使用してデータを読み取ることができます。その後、ItemProcessorを使用して受信データを変更し、適切なデータを出力し、適切にマッサージします。カスタムJavaロジックなので、itemProcessorを提供します。次に、JdbcItemWriterを使用するか、または単に自分でプラグインします。

これについての素敵な部分は、それがあるということです [A]とてもたくさんと例がたくさんありますので、スーパーありふれ(参照:春のインスピレーションのためのバッチ自体にSpring Batch 2.0 – Part II – Flat File To Databaseまたはjoshlong/joshlong-examples/spring-batch-starterまたはサンプル)と を[b]主に宣言的です。気にしないことを心配する必要はありません.CSVファイルを正しく解析する方法や、スケーラブルな方法でファイルを読み込む方法を理解することに取り組んでいるわけではありません。あなたは、データが有効であることを確認し、それが終わるはずの場所で終わることを確認したいだけです。

+0

私はこの評価にほとんど同意しますが、スプリングバッチは万能薬ではありません。 Spring Batch(または他のフレームワーク)の欠点は、フレームワークコードを掘り下げて何かがうまくいかない理由を理解するのに時間がかかることがあることです。多くの問題(マイナーとメジャー)の唯一の兆候は、ものがうまく機能しないことと、ログには何がないかを伝えることがうまくいかないことです。たぶんいつかSpringは "read programmers mind"クラスをスタックに追加します。 –

関連する問題