Skip to content

Instantly share code, notes, and snippets.

@franzwong
Created February 5, 2023 00:58
Show Gist options
  • Save franzwong/8abd2f3ed213e9c5da370f63ccd39947 to your computer and use it in GitHub Desktop.
Save franzwong/8abd2f3ed213e9c5da370f63ccd39947 to your computer and use it in GitHub Desktop.
Quartz schedular example
package org.example;
import org.quartz.Job;
import org.quartz.JobBuilder;
import org.quartz.JobDetail;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import org.quartz.Scheduler;
import org.quartz.SchedulerFactory;
import org.quartz.Trigger;
import org.quartz.TriggerBuilder;
import org.quartz.impl.StdSchedulerFactory;
import static org.quartz.CronScheduleBuilder.cronSchedule;
public class Main {
public static void main(String[] args) throws Exception {
SchedulerFactory schedulerFactory = new StdSchedulerFactory();
Scheduler scheduler = schedulerFactory.getScheduler();
JobDetail job1 = JobBuilder.newJob(DemoJob.class)
.withIdentity("job1", "group1")
.build();
Trigger trigger1 = TriggerBuilder.newTrigger()
.withIdentity("trigger1", "group1")
.withSchedule(cronSchedule("0 0/1 * * * ?")) // seconds, minutes, hours, days, months, weekdays, (years)
.build();
scheduler.scheduleJob(job1, trigger1);
scheduler.start();
}
public static class DemoJob implements Job {
@Override
public void execute(JobExecutionContext context) throws JobExecutionException {
System.out.println("Hello World");
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment