(一)Quartz2.2.1 簡單例子


轉載至http://blog.csdn.net/a4307515/article/details/46985533

1.關鍵接口

  • Scheduler,任務調度的API;它可以用來啟動或者終止任務等。
  • Job,具體的任務接口;通過實現它,來讓任務調度執行具體的任務。
  • JobDetail ,用來定義Job的實例。
  • Trigger ,觸發器用來定義給定的Job應該如何執行。
  • JobBuilder ,用來定義/構建Jobdetail實例。
  • TriggerBuilder ,用來定義/構建Trigger實例。

2.簡單例子

下面是一個簡單的例子,創建一個簡單的任務調度。

創建一個Job,名為HelloJob:

package me.shijunjie.quartz;

import java.util.Date;

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

public class QuartzTestJob implements Job {

    @Override
    public void execute(JobExecutionContext context) throws JobExecutionException {
        System.out.println("Hello, Quartz! - executing its JOB at "+ 
                new Date() + " by " + context.getTrigger().getJobKey().getName());
    }

}

實現Job接口中的execute方法,這個方法中是我們需要任務調度執行的具體內容

首先,創建JobDetail:

JobDetail jobDetail = JobBuilder.newJob(QuartzTestJob.class)
                                    .withIdentity("testQuartzJob", "group1").build();

然后,創建Trigger:

Trigger trigger = TriggerBuilder.newTrigger().withIdentity("myTrigger", "group1")
                            .startNow().withSchedule(SimpleScheduleBuilder.simpleSchedule()
                                                        .withIntervalInSeconds(5).withRepeatCount(3)).build();

最后,獲取Scheduler,並啟動任務:  

SchedulerFactory schedulerFactory = new StdSchedulerFactory();
Scheduler scheduler = schedulerFactory.getScheduler();
//添加job,以及其關聯的trigger
scheduler.scheduleJob(jobDetail, trigger);
//啟動job
scheduler.start();

運行結果如下

 

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM