2015-10-17 32 views
5

私はバッチ処理が初めてです。私は簡単なスケジューラと仕事から始めようとしています。しかし、私は混乱しています。 春のバッチ対石英の仕事。私の理解は春のバッチ対石英の仕事?

石英:石英はスケジューラフレームワークとジョブフレームワークの両方のフレームワーク(私は春のバッチジョブを使用したくない場合)を提供します。右 ?

スプリングバッチ: -これはジョブフレームワークのみを提供します。私はいつもQuatz schecdulerを使って春バッチジョブをスケジュールしています。 springは独自のスケジューラも提供していますか?

答えて

17

クォーツはスケジューリングフレームワークです。 「今月の毎週または毎週金曜日に何かを実行する」のように

Spring Batchは、実行される「何か」を定義するフレームワークです。 ステップを含むジョブを定義できます。通常、ステップはアイテムリーダー、オプションのアイテムプロセッサー、アイテムライターで構成されていますが、カスタムステムを定義することもできます。また、Springバッチに10個のアイテムと他の多くのものをコミットするように指示することもできます。

Quartzを使用してSpringバッチジョブを開始できます。

基本的にSpring Batchでは何をすべきかが定義されているため、Quartzではいつ行うべきかを定義します。

+1

Spring 3では、タスクをスケジュールすることもできます。http://docs.spring.io/spring/docs/current/spring-framework-reference/html/scheduling.html 石英を使用してください。 –

+0

はい、そうです。 –

+0

QuartzにはSpringのような独自のバッチ/ジョブフレームワークはありませんか?私はクラス 'org.quartz.Job'がvyのクォーツを提供しているのを見ています。これも 'execするものを定義するものではない' – emilly