cron表达式(Quartz中的使用)

//获取调度器
Scheduler scheduler = StdSchedulerFactory.getDefaultScheduler();
//创建触发器
Trigger trigger = TriggerBuilder.newTrigger().withSchedule(
	CronScheduleBuilder.cronSchedule("放置cron表达式处");
).withIdentity("name", "group1").startNow().build();

JobDetail jobDetail = JobBuilder.newJob(TestJob.class).withIdentity("job1", "group1").usingJobData("name", "张三").build();
scheduler.scheduleJob(jobDetail, trigger);
scheduler.start();
System.in.read();

cron表达式有7位,其中第七位即最后一位为可选(六位的表达式必然是少了年份)
顺序为:秒 分钟 小时 ⽇期 ⽉份 星期 年份

其中日期与星期互相影响,不能同时出现:未选择使用的字段应使用’?'占位符

  • “*”:对应时间域的每⼀个时刻
  • “-”:表达一个范围
  • “,”:表达⼀个列表值 eg:“1,3,4”
  • “/”:表达⼀个自增列表
    ----x/y,x为起始值,y为增量步⻓值。----1/5表达:1,6,11,16,21,26,31…
  • L:该字符只在⽇期和星期字段中使⽤。在⽇期字段中,表⽰这个⽉ 份的最后⼀天;在星期中,表⽰星期六,等同于7
    如果L出现在星期字段⾥,而且在前⾯有⼀个数值X,则表⽰“这个⽉的最后X天”。eg:6L表⽰该⽉的最后星期五
  • W:该字符只能出现在⽇期字段⾥,是对前导⽇期的修饰,表⽰离该⽇期最近的⼯作⽇。注意关联的匹配⽇期不能够跨⽉
  • LW组合:当⽉的最后⼀个⼯作⽇
  • “#”:星期字段中使⽤,表⽰当⽉某个⼯作⽇。eg:6#3表⽰当⽉的第三个星期五(6表⽰星期五,#3表⽰当前的第三个)。#5时如不存在则忽略不触发

猜你喜欢

转载自blog.csdn.net/yinzitun7947/article/details/85709247
今日推荐