Quartz定時任務

最近使用到quartz的定時任務總結下:

0、使用到的jar quartz-1.8.4.jar,commons-logging-1.1.3.jar,slf4j-api-1.5.8.jar,slf4j-log4j12-1.5.8.jar,log4j-1.2.16.jar

下載地址:http://download.csdn.net/detail/xumajie88/6974077

1、實現Job接口

2、創建觸發器

3、業務處理執行方法excute()

4、添加到應用環境中,下面舉例說明


import java.text.ParseException;

import org.quartz.CronTrigger;
import org.quartz.Job;
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.impl.StdSchedulerFactory;
public class MySimpleJob implements Job {

	/**
	 * 指定讓任務的觸發時間
	 */
	public Trigger createTrigger() {
		CronTrigger trigger = new CronTrigger("InspectionBuildJob");
		try {
			//每天晚上0:05:00運行
//			trigger.setCronExpression("0 5 0 * * ?");
			
			//測試�?,每分鐘運�?
			trigger.setCronExpression("0 * * * * ?");
		} catch (ParseException e) {
			e.printStackTrace();
		}
		return trigger;
	}

	@Override
	public void execute(JobExecutionContext context) throws JobExecutionException {
		//在這裏寫任務代碼
		System.out.println(System.currentTimeMillis());
	}

	/**
	 * 這裏的內容可以考慮封裝起來
	 * */
	public static void main(String[] args) throws Exception {
		MySimpleJob qj = new MySimpleJob();
		//每個job都有自己的JobDetail
		JobDetail jobDetail = new JobDetail(qj.getClass().getSimpleName() ,Scheduler.DEFAULT_GROUP,qj.getClass());     
		SchedulerFactory factory = new StdSchedulerFactory();
		//從進度工廠中過去一個進度表
		Scheduler scheduler = factory.getScheduler();
		//給該進度表分配任務
		scheduler.scheduleJob(jobDetail, qj.createTrigger());
		//進度開始
		scheduler.start();
	}
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章