4

Spring Batch 2.1.5 を使用しています。私はお互いに非常によく似た仕事をたくさん持っており、より小さな XML を仕事のテンプレートとして機能させる方法を探しています。

ジョブ間で共有されるのは、リーダー、プロセッサー、ライター、および 1 つのタスクレットです。また、これらの各 Bean のパラメーターの一部は同じです。たとえば、それらはすべて同じデータ ソースを使用します。

4つのアプローチについて考えましたが、そのうち3つは機能しません...

1 - Spring Batch クラス JobParserJobFactoryBean はパブリック クラスではないため、ポストプロセッサを使用して共通 Bean と属性をデフォルト値として追加することはできません。

2 - XML ファイルにカスタム タグを追加していないため、XML 拡張子を追加するのは間違っているようです。

3 - PropertyOverrideConfigurer を使用して、デフォルト値をプロパティに入れることができますが、Bean ごとにそれらの値を定義する必要があります。したがって、多くの繰り返し値があり、問題をプロパティに移動するだけです。

4 - ある種のカスタム ファクトリ Bean を使用する。これらが唯一の選択肢のようですが、既存のコードにプラグインする方法が正確にはわかりません。

誰かがこれをやろうとしましたか?誰かがそれを行う方法に関するヒントや推奨リソースを提供できますか?

4

1 に答える 1

0

Spring Batchは、継承する抽象ジョブ(およびステップなど)を定義する機能を提供します。詳細については、リファレンスマニュアルを参照してください。これを使用すると、探していることを正確に達成できるはずです。

于 2011-08-31T13:38:09.007 に答える