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
时间: 2024-10-26 00:37:21