一 JobDetail的构造方法
JobDetail的构造方法相对比较简单
public JobDetail(String name, String group, Class jobClass) { setName(name); setGroup(group); setJobClass(jobClass); }
二 SimpleTrigger 的构造方法
下面这个是比较全面的构造方法
/** * <p> * Create a <code>SimpleTrigger</code> that will occur at the given time, * fire the identified <code>Job</code> and repeat at the the given * interval the given number of times, or until the given end time. * </p> * * @param startTime * A <code>Date</code> set to the time for the <code>Trigger</code> * to fire. * @param endTime * A <code>Date</code> set to the time for the <code>Trigger</code> * to quit repeat firing. * @param repeatCount * The number of times for the <code>Trigger</code> to repeat * firing, use {@link #REPEAT_INDEFINITELY}for unlimitted times. * @param repeatInterval * The number of milliseconds to pause between the repeat firing. */ public SimpleTrigger(String name, String group, String jobName, String jobGroup, Date startTime, Date endTime, int repeatCount, long repeatInterval) {
super(name, group, jobName, jobGroup); setStartTime(startTime); setEndTime(endTime); setRepeatCount(repeatCount); setRepeatInterval(repeatInterval); }
三.在调度器启动后仍然可以添加新的任务和触发器
sched.start(); // jobs can also be scheduled after start() has been called... // job7 will repeat 20 times, repeat every five minutes job = new JobDetail("job7", "group1", SimpleJob.class); trigger = new SimpleTrigger("trigger7", "group1", "job7", "group1", new Date(ts), null, 20, 300000L); ft = sched.scheduleJob(job, trigger);
四.可以设置任务立即执行
// jobs can be fired directly... (rather than waiting for a trigger) job = new JobDetail("job8", "group1", SimpleJob.class); job.setDurability(true); sched.addJob(job, true); sched.triggerJob("job8", "group1");