首页 > 其他 > 详细

任务调度 Quartz 学习(二) CronTrigger

时间:2016-02-16 14:51:12      阅读:154      评论:0      收藏:0      [点我收藏+]

 在Quartz中Trigger有 SimpleTrigger与CronTrigger两种:

  SimpleTrigger:当需要的是一次性的调度(仅是安排单独的任务在指定的时间及时执行),或者你需要在指定的时间激活某个任务并执行N次,设置每次任务执行的间隔时间T。那此时使用SimpleTrigger将是非常方便的。

  CronTrigger: 如果需要安排的任务时基于日期的-比如"每个星期五正午"或者"每个月10号的10:15",使用CronTrigger将是非常有用的。

  在上一篇的例子中使用的是SimpleTrigger,这次写个CronTrigger的例子。

Example:

 

public class MyJob implements Job{

    @Override
    public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
        System.out.println("测试quartz"+new Date());
    }

    //CronTrigger
    //其他定义与SimpleTrigger没有区别,只是在定义Trigger的时候有所改变
    public static void cronTrigger() throws SchedulerException {
        SchedulerFactory sf=new StdSchedulerFactory();
        Scheduler sche=sf.getScheduler();

        JobDetail jobDetail=JobBuilder.newJob(MyJob.class).withIdentity("job2","group2").build();
        CronTrigger cron=TriggerBuilder.newTrigger().withIdentity("trigger2","group2")
                .startNow()
                .withSchedule(CronScheduleBuilder.cronSchedule("0/20 * * * * ?")).build();  //每隔20秒运行一次
                                                                                            //("15 0/2 * * * ?")偶数分钟的第15秒执行一次
                                                                                            //("0 0/2 8-17 * * ?")8时到17时的每个偶数分钟执行一次
                                                                                            //("0 0/3 17-23 * * ?")17-23时,每3分钟执行一次

        sche.scheduleJob(jobDetail,cron);
        sche.start();


    }

    public static void main(String[] args) throws SchedulerException {

        cronTrigger();
    }
}

 

 

 

  

 

任务调度 Quartz 学习(二) CronTrigger

原文:http://www.cnblogs.com/nww57/p/5192461.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!