kratos2333
2/13/2019 - 10:38 AM

Simple Quartz

Job Scheduling library,

Components of quartz

  1. Job - a task
  2. Trigger - 2.1 simple trigger 2.2 cron trigger
  3. Scheduler (schedule a particular job within given trigger)
package com.kevinjia.quartz;

import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;

import java.util.Date;

public class QuartzJob implements Job {

    @Override
    public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
        System.out.println("Hello world, quartz!!");
        System.out.println(new Date());
    }
}
package com.kevinjia.quartz;

import org.quartz.*;
import org.quartz.impl.StdSchedulerFactory;

public class QuartzMain {
    public static void main(String[] args) throws SchedulerException {
        // Define a job and tie it to our job class
        JobDetail detail = JobBuilder.newJob(QuartzJob.class).build();
//        Trigger t1 = TriggerBuilder.newTrigger().withIdentity("SimpleTrigger").startNow().build();
//        Trigger t1 = TriggerBuilder.newTrigger().withIdentity("CronTrigger").withSchedule(CronScheduleBuilder.cronSchedule("0 * 0 ? * * *")).build();
        Trigger t1 = TriggerBuilder.newTrigger().withIdentity("CronTrigger").withSchedule(SimpleScheduleBuilder.simpleSchedule().withIntervalInSeconds(05).repeatForever()).build();
        Scheduler sc = StdSchedulerFactory.getDefaultScheduler();
        sc.start();
        sc.scheduleJob(detail,t1);
    }
}