log4j log4j 1.2.17 org.quartz-scheduler quartz 2.0.2
Xây dựng lớp TestJob implement Job của Quartz. lớp này để thực hiện một công việc mà ta cần làm sau một khoảng thời gian xác định. Cụ thể công việc ở đây là in ra dòng thông báo.
package vn.diepviends.job; import org.apache.log4j.Logger; import org.quartz.Job; import org.quartz.JobExecutionContext; import org.quartz.JobExecutionException; public class TestJob implements Job { private Logger log = Logger.getLogger(TestJob.class); public void execute(JobExecutionContext arg0) throws JobExecutionException { log.debug("Test job run successfully after 2s"); } }Trong lớp chính cần gọi ta cài đặt khoảng thời gian lặp lại cho job và gọi TestJob class để thực hiện
package vn.diepviends.job; import org.quartz.JobBuilder; import org.quartz.JobDetail; import org.quartz.Scheduler; import org.quartz.SchedulerException; import org.quartz.SchedulerFactory; import org.quartz.SimpleScheduleBuilder; import org.quartz.Trigger; import org.quartz.TriggerBuilder; import org.quartz.impl.StdSchedulerFactory; public class JobScheduler { public static void main(String[] args) { try { // chi ra job can thuc hien JobDetail job = JobBuilder.newJob(TestJob.class) .withIdentity("testJob").build(); // qui dinh thoi gian la 2s, lap lai mai mai Trigger trigger = TriggerBuilder .newTrigger() .withSchedule( SimpleScheduleBuilder.simpleSchedule() .withIntervalInSeconds(2).repeatForever()) .build(); // start SchedulerFactory schFactory = new StdSchedulerFactory(); Scheduler sch = schFactory.getScheduler(); sch.start(); sch.scheduleJob(job, trigger); } catch (SchedulerException e) { e.printStackTrace(); } } }Và đây là kết quả khi run lớp JobScheduler
Không có nhận xét nào:
Đăng nhận xét