2015-10-17 16 views
5

Ich bin neu in der Batch-Verarbeitung. Ich versuche mit einem einfachen Scheduler und Job zu beginnen. Aber ich bin verwirrt s/w Frühling Batch vs Quarz Arbeitsplätze. Mein Verständnis istFrühling Batch vs Quarz Arbeitsplätze?

Quarz: - Quarz bietet beide Frameworks. Scheduler-Framework und Job-Framework (für den Fall, dass ich nicht wollen, Frühjahr Batch-Jobs verwenden). Recht ?

Spring Batch: - Es bietet nur das Job-Framework. Ich habe immer Quatz-Scheduler geschickt, um Spring-Batch-Jobs zu planen. Bietet der Frühling auch einen eigenen Scheduler?

Antwort

17

Quarz ist ein Planungsrahmen. Wie "führe etwas jede Stunde oder jeden letzten Freitag des Monats aus"

Spring Batch ist ein Framework, das das "etwas" definiert, das ausgeführt wird. Sie können einen Job definieren, der aus Schritten besteht. Normalerweise besteht ein Schritt aus einem Elementleser, einem optionalen Elementprozessor und einem Objektschreiber, aber Sie können einen benutzerdefinierten Stamm definieren. Sie können Spring Batch auch sagen, dass es sich auf alle 10 Elemente und viele andere Dinge festlegen soll.

Sie können mit Quartz Spring Batch-Jobs starten.

Also im Grunde Spring Batch definiert, was getan werden sollte, definiert Quartz wann es getan werden soll.

+1

Ab Frühling 3 können Sie auch Aufgaben planen - http://docs.spring.io/spring/docs/current/spring-framework-reference/html/scheduling.html Es enthält auch Wrapper, wenn Sie noch wollen benutze Quarz. –

+0

Ja, das stimmt. –

+0

Hat also Quarz nicht sein eigenes Batch/Job-Framework wie der Frühling? Ich sehe die Klasse 'org.quartz.Job' vy Quarz zur Verfügung gestellt. Definiert das auch nicht, dass etwas, was exec sein wird – emilly