Im Frühjahr werden zwei Haupttypen zeitgesteuerter Aufgaben verwendet
1. Spring integriert Quartz Job
2. Die Aufgabe, die mit Frühling 3.0 danach geliefert wird
1. Zwei Möglichkeiten, um Zeitaufgaben zu implementieren
Quarzjob
1. Schreiben Sie zuerst eine Aufgabenklasse
Paket com.yjf.job; import org.slf4j.logger; import org.slf4j.loggerfactory;/** * @author yjf */public class Beispieljob {private static final logger logger = loggerfactory.getLogger (Beispieljob.class); public void run () {logger.info ("Beispieljob rennt"); }}2. Fügen Sie Feder integrierte Quarzkonfiguration hinzu
<!-Integrierter Quarzjob-> <!-Definieren der Aufgabe-> <bean id = "examplejob"/> <!-Methode zum Angeben der Bean-> <bean id = "examplejobMethod"> <Eigenschaft name = "targetObject" Ref = "examplejob"/> <Eigentum "targetmethod" -Vote ". sind zwei Arten von Triggern für Quarz-> <!-Die erste simpleTiggerfactoryBean unterstützt nur Aufrufaufgaben zu einer bestimmten Frequenz, z. name = "repepInterval" value = "10"/>-> <!-</bean>-> <! </bean> <!-konfigurieren
Frühlingsaufgabe
1. Taskkategorien schreiben
Paket com.yjf.job; import org.slf4j.logger; import org.slf4j.loggerfactory; import org.springframework.Scheduling.Annotation.Scheduled; private logger logger = loggerFactory.getLogger (this.getClass ()); @Scheduled (cron = " */5 * * * *?") Public void doit () {logger.info ("Ich mache"); }}2. Aufgabenkonfigurationsdatei hinzufügen
<!-Konfigurieren Sie mit Annotation-> <!-Task-Timing-Aufgaben aktivieren-> <Task: Annotationsgetrieben/> <!-Scannen Sie den Ort des Pakets, an dem sich der Job befindet-> <Kontext: Komponent-scan Base-Package = "com.yjf.job"/>
2. Vergleichen Sie die Vor- und Nachteile der beiden
Quartz Jobfunktionen
1. leistungsstarke Funktion, aber leicht umständliche Konfiguration
2. Quartz erstellt jedes Mal ein neues Task -Objekt, wenn es ausgeführt wird
3. Eine Ausnahme wird während einer Quarzausführungsaufgabe ausgelöst, die die Ausführung der nächsten Aufgabe nicht beeinflusst. Wenn die nächste Ausführungszeit kommt, wird der Timer die Aufgabe erneut ausführen.
Feder Aufgabenfunktionen
1. Verwenden Sie @Scheduled Annotation und eine kleine Anzahl von Konfigurationen, um sie einfach zu implementieren
2. Die Aufgabe verwendet das gleiche Task -Objekt bei jeder Ausführung
3. Sobald eine TimerTask -Ausnahme während der Ausführung ausgelöst wird, endet der gesamte Timer -Lebenszyklus und die Timer -Aufgabe wird in Zukunft nie wieder ausgeführt.
Derzeit benutze ich persönlich Quartz Job mehr
Der obige Artikel "Spring's Implementierungsmethode zur Integration von Quartz -Job- und Spring -Task" ist der gesamte Inhalt, den ich mit Ihnen teile. Ich hoffe, Sie können Ihnen eine Referenz geben und ich hoffe, Sie können wulin.com mehr unterstützen.