首页 > 代码库 > quartz入门

quartz入门

quartz有两个重要对象,作业JobDetail和触发器Trigger,它们是多对多的关系

作业

JobDetail

JobDetail jobDetail = JobBuilder.newJob(HelloQuartzJob.class)  
                .withIdentity("testJob_1", "group_1")  
                .build(); 

触发器

Trigger,Quartz有两大触发器,SimpleTrigger和CronTrigger

Trigger trigger = TriggerBuilder.newTrigger()//创建一个新的TriggerBuilder来规范一个触发器  
                .withIdentity("trigger_1", "group_1")//给触发器一个名字和组名  
//              .startNow()//立即执行  
                .startAt(runTime)//设置触发开始的时间  
                .withSchedule  
                (  
                    SimpleScheduleBuilder.simpleSchedule()  
                    .withIntervalInSeconds(10)//时间间隔  
                    .withRepeatCount(5)//重复次数(将执行6次)  
                )  
                .build();//产生触发器  
//

 String cronExpression = "30/5 * * * * ?"; // 每分钟的30s起,每5s触发任务        

 CronTrigger cronTrigger = new CronTriggerImpl("cronTrigger", 

 Scheduler.DEFAULT_GROUP, cronExpression);

 cron有6个必要组件和1个可选组件,年(可选)-星期-月-日-时-分-秒。

misfire规则

TODO

quartz入门