quartz 几个例子 2.2.2

https://my.oschina.net/chengxiaoyuan/home?type=&scope=all&showme=NOTSHOW&p=1&temp=1519293929066

http://blog.csdn.net/zhuce0001/article/details/53239628





// 有状态job1每3秒运行1次,但会延迟10秒(任务中睡眠了10秒模拟了执行任务需要10秒)  
        JobDetail job = newJob(StatefulDumbJob.class).withIdentity(  
                "statefulJob1", "group1").usingJobData(  
                StatefulDumbJob.EXECUTION_DELAY, 10000L).build();  
        SimpleTrigger trigger = newTrigger().withIdentity("trigger1", "group1")  
                .startAt(startTime).withSchedule(  
                        simpleSchedule().withIntervalInSeconds(3)  
                                .repeatForever()).build();  
        Date ft = sched.scheduleJob(job, trigger);  
        log.info(job.getKey() + " will run at: " + ft + " and repeat: "  
                + trigger.getRepeatCount() + " times, every "  
                + trigger.getRepeatInterval() / 1000 + " seconds");  
  
        // 有状态job2每3秒运行1次,但会延迟10秒(任务中睡眠了10秒模拟了执行任务需要10秒)  
        // job2设置了策略,所以错失后会立即触发,而不会等到下一个触发点  
        job = newJob(StatefulDumbJob.class).withIdentity("statefulJob2",  
                "group1").usingJobData(StatefulDumbJob.EXECUTION_DELAY, 10000L)  
                .build();  
        trigger = newTrigger().withIdentity("trigger2", "group1").startAt(  
                startTime).withSchedule(  
                simpleSchedule().withIntervalInSeconds(3).repeatForever()  
                // 设置错失触发后的调度策略  
                        .withMisfireHandlingInstructionNowWithExistingCount())  
                .build();  
        ft = sched.scheduleJob(job, trigger);  

猜你喜欢

转载自dannyhz.iteye.com/blog/2411213