Dieser Artikel beschreibt die Methode von Java, um Zeitaufgaben basierend auf dem Mechanismus von Thread -Pooling und Reflexion zu implementieren. Teilen Sie es für Ihre Referenz wie folgt weiter:
Es enthält hauptsächlich die folgenden Implementierungsklassen:
1. Hauptklasse:
Der Eintrag zur Aufgabenausführung:
Rufen Sie die Hauptmethode an, um die Aufgabenkonfiguration zu laden und die Aufgabe auszuführen
Paket com.yanek.task; @ Param Args * / public void main (String [] args) {enderExecutorService afuexec = ausführende. ; i ++) {TaskModel TM = (TaskModel) tasks.get (i);2. Die MyTask -Klasse implementiert die Runnable -Schnittstelle und nennt sie in der Hauptklasse
Paket com.yanek.task; Mytask (TaskModel TM) {this.taskModel = tm; (TaskModel .GetClassName ()); e.printstacktrace (); e) {e .printstacktrace ();3.. Taskmodel: Kapselung von Aufgabenklassen
Paket com.yanek.task; (String MethodName) {this.methodName = methodName; SetPeriode (lange Zeit) {this.Period = Periode;4. XMLReader Task -Konfiguration Auflösungsklasse
Paket Com.anek.task; .Dokument; LISTE GETASS () {LISTE TASSS = New ArrayList (); Datei (Path); ; .GetChildText ("Klasse")); .out .println (Childs.get (i) .GetChildText ("Methode"); ); "); Aufgaben. ); AD -Task -Konfiguration End! ");}}}5. Konfigurationsdatei:
<? /initialdElay> <periode> 2 </period> </task> <aufgabe> <class> com.yanek.task.taskb </class> <Methode> testb </methode> <initialdElay> 5 </initelay> <Periode > 3 </initial> </task> <task> <class> com.yanek.task.taskc </class> <method> testc </methode> <initialdElay> 5 </initieldElay> <Periode> 3 </Periode > </task> </taskconfig>
6. Testaufgabenklasse:
Taska Taskb TaskC definiert statische Methoden, und die statischen Methoden dieser Klassen sind in der XML -Datei konfiguriert und aufgerufen.
Paket com.yanek.task; () {System.out.println ("Taska Testa -Methode!"); ) {System.out.println ("Aufgabe B -Test"); TaskC { / ** * @param args * / public static void main (String [] args) {System.out.println ("Task C -Test"); TaskC Testc -Methode Anruf! ");}}Ich hoffe, dieser Artikel wird für Java -Programme aller hilfreich sein.