论坛首页 Java企业应用论坛

quartz学习笔记二(example2)

浏览 2373 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2010-11-03   最后修改:2010-11-03

一 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");

    
   发表时间:2010-11-03  
五.更换触发器
 trigger = new SimpleTrigger("trigger7", "group1", "job7", "group1", 
                new Date(), null, 10, 1000L);
        ft = sched.rescheduleJob("trigger7", "group1", trigger);
0 请登录后投票
   发表时间:2010-11-06  
不久前项目中用过。。。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics