2016-05-05 2 views
-1

public static void main (String [] args) throws SchedulerException {// Konfigurieren Job mit Quarz. JobDetail job = JobBuilder.newJob (TriggerJob.class) .withIdentity ("testJob"). Build(); System.out.println ("Auftrag erstellt ................."); // Geben Sie die Laufzeit des Jobs an CronTrigger trigger = TriggerBuilder.newTrigger(). WithIdentity ("triggerName", "groupName"). WithSchedule ("CronScheduleBuilder.cronSchedule (" 0 51 4 5 1/1? ")). bauen(); System.out.println ("getCronExpression() =" + trigger.getCronExpression()); // CronScheduleBuilder.dailyAtHourAndMinute (3, 30)) System.out.println ("Trigger erstellt ................."); SchedulerFactory Scheduler = neu StdSchedulerFactory(); Zeitplaner sched = scheduler.getScheduler(); sched.start(); sched.scheduleJob (Job, Trigger); sched.shutdown(); System.out.println ("Geplanter Auftrag ...................");Ich versuche Cron-Job zu schreiben, der monatlich ausgeführt werden muss Ich habe versucht, aber mein Code funktioniert nur für Minute/Stunde nicht für Monat

} 
public class TriggerJob implements Job 

{ public void execute (JobExecutionContext arg0) wirft JobExecutionException { JobKey jobKey = arg0.getJobDetail() getKey(). System.out.println ("jobKey =" + jobKey.toString()); Kalenderkalender = Calendar.getInstance(); // Rufen Sie den EHCache-Lademechanismus einmal täglich an. System.out.println ("Auftragsausführung gestartet am -" + calendar.getTime()); // schreiben Sie Ihre Logik System.out.println ("***********************************" ************************************************** ***)); System.out.println ("Datensätze einfügen"); System.out.println ("******************************************" ********************************************** "); System.out.println ("Auftragsausführung abgeschlossen am -" + calendar.getTime()); } }

Konsolausgabe: Job erstellt .................... -Trigger erstellt ............. .... getCronExpression() = 0 50 3 4 *? 219 [main] INFO org.quartz.impl.StdSchedulerFactory - Verwendung der Standardimplementierung für den ThreadExecutor 234 [main] INFO org.quartz.simpl.SimpleThreadPool - Die Ausführungsthreads verwenden den Klassenlader des Threads: main 313 [main] INFO org.quartz.core.SchedulerSignalerImpl - initialisierter Scheduler Signaler des Typs: class org.quartz.core.SchedulerSignalerImpl 313 [main] INFO org.quartz.core.QuartzScheduler - Quartz Scheduler v.2.1.7 erstellt. 329 [main] INFO org.quartz.simpl.RAMJobStore - RAMJobStore initialisiert. 329 [main] INFO org.quartz.core.QuartzScheduler - Planer-Metadaten: Quartz Scheduler (v2.1.7) 'DefaultQuartzScheduler' mit instanceId 'NON_CLUSTERED' Scheduler-Klasse: 'org.quartz.core.QuartzScheduler' - wird lokal ausgeführt . NICHT ANGEFANGEN. Momentan im Standby-Modus. Anzahl der ausgeführten Jobs: 0 Verwendung des Thread-Pools 'org.quartz.simpl.SimpleThreadPool' - mit 10 Threads. Verwenden von Job-Store 'org.quartz.simpl.RAMJobStore' - unterstützt keine Persistenz. und ist nicht gruppiert.

329 [main] INFO org.quartz.impl.StdSchedulerFactory - Quartz Scheduler 'DefaultQuartzScheduler' von Standard-Ressourcendatei in Quarz-Paket initialisiert: 'quartz.properties' 329 [main] INFO org.quartz.impl.StdSchedulerFactory - Quartz Scheduler Version: 2.1.7 329 [main] INFO org.quartz.core.QuartzScheduler - Scheduler DefaultQuartzScheduler _ $ _ NON_CLUSTERED gestartet. Job geplant ...................

+1

geben Sie mehr Details über Ihr Problem, und bitte formatieren Sie Ihren Code und Fehler (wenn Sie beschrieben hatten, ist wirklich Ihre Frage nicht lesbar) – Archish

Antwort

0

@monthly Läuft den Job einmal im Monat, am 1., um 12:00 Uhr. In der Standard-Cron-Syntax entspricht dies: 0 0 1 * *.

+0

Ich bin nicht sicher, was Sie fragen ... aber ich hoffe, das ist was du suchst nach –

Verwandte Themen