Quartz 1.6 hello world example using SimpleTrigger

Quartz scheduler:

Quartz is an open source job scheduling framework that can be integrated into a wide variety of Java applications to run task on a predefine date and time.

Example Explanation:

1. Create a job by implementing Job interface.
2. Perform your business logic in the execute method.
3. Create a class for executing quartz job.
4. Create a JobDetail object and set job detail like name and job class.
5. Create SimpleTrigger object and set the scheduler timing and other details.
6. Get Scheduler object from StdSchedulerFactory.
7. Use Scheduler object to connect quartz job and quartz trigger together and execute the job.

Example:

SimpleTriggerTest.java
import java.util.Date;
import org.quartz.JobDetail;
import org.quartz.Scheduler;
import org.quartz.SimpleTrigger;
import org.quartz.impl.StdSchedulerFactory;
 
/**
* This class is used for executing quartz job
* using SimpleTrigger(Quartz 1.6.3).
* @author javawithease
*/

public class SimpleTriggerTest {
public static void main(String args[]){
try{
//Set job details.
JobDetail job = new JobDetail();
job.setName("helloJob");
job.setJobClass(HelloJob.class);
 
//Set the scheduler timings.
SimpleTrigger trigger = new SimpleTrigger();
trigger.setName("simpleTrigger");
trigger.setStartTime(new
Date(System.currentTimeMillis()));
//Job will be executed 5 times.
trigger.setRepeatCount(5);
//Execute the job after every 10 seconds.
trigger.setRepeatInterval(10000);
 
//Execute the job.
Scheduler scheduler =
new StdSchedulerFactory().getScheduler();
scheduler.start();
scheduler.scheduleJob(job, trigger);
}catch(Exception e){
e.printStackTrace();
}
}
}
HelloJob.java
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
 
/**
* This class defines a quartz job.
* @author javawithease
*/

public class HelloJob implements Job{
public void execute(JobExecutionContext context)
throws JobExecutionException {
System.out.println("Hello World.");
}
}

Output:

Hello World.
Hello World.
Hello World.
Hello World.
Hello World.

No comments: