Quarz入門(一)
1708 ワード
public class QuartzReport implements Job {
public void execute(JobExecutionContext cntxt) throws JobExecutionException {
System.out.println(" , ");
System.out.println( " Generating report - "
+ cntxt.getJobDetail().getJobDataMap().get("type")
+ "-"
+ new Date());
}
}
public class TestJob {
public static void main(String[] args) {
try {
SchedulerFactory schedFact = new org.quartz.impl.StdSchedulerFactory();
Scheduler sched = schedFact.getScheduler();
sched.start();
JobDetail jobDetail = new JobDetail( " Income Report " ,
" Report Generation " , QuartzReport. class );
jobDetail.getJobDataMap().put("type" , " FULL " );
CronTrigger trigger = new CronTrigger( " Income Report " ,
" Report Generation " );
/* 1 */
trigger.setCronExpression( " 0 0/1 * * * ? " );
sched.scheduleJob(jobDetail, trigger);
} catch (Exception e) {
e.printStackTrace();
}
}
}
SchedulerファクトリからSchedulerを取得し、JobDetailのJobなどの属性を設定し、ここでjobDetailがDetailDataMapを介してJobにパラメータを渡すことで対応するJobを実行できるように設定する.CronTriggerはトリガであり,いつトリガするかなどの情報を設定し,最後にSchedulerはタスクを設定する[JobDetail,Trigger]