package demo2;
import java.text.ParseException;
import org.quartz.CronExpression;
import org.quartz.CronTrigger;
import org.quartz.JobDetail;
import org.quartz.Scheduler;
import org.quartz.SchedulerException;
import org.quartz.SchedulerFactory;
import org.quartz.impl.StdSchedulerFactory;
public class Demo2 {
public static void main(String[] args) throws ParseException, SchedulerException {
JobDetail jobDetail = new JobDetail("job1_2","jGroup1",SimpleJob.class);
CronTrigger cronTrigger = new CronTrigger("trigger1_2","tgroup1");
// 允许的特殊字符指的是 , - 等等 如 MON,WED,FRI 表示星期一,星期三和星期五 (注意空格 才表示一个字段哦 )
// * 如在 分钟字段中 表示 每分钟 (可以用在所有字段 )
// 1 -- 7 指定的位置意思
// 1. 秒 0~59 2.分钟0~59 3. 小时 0~23 4.日期 1~31 5.月份 1~12 6.星期 1~7 7.年(可选) 1970~2099
// ? 该特殊字符只在 日期 和星期中使用 , 通常仅仅为了占位,无意义 - 指的是范围 如 1-12 , 不用解释吧 如 MON,WED,FRI 表示星期一,星期三和星期五
// /(斜杠) 表示等步 长序列 x为起始值, y为 增量 步长值。 0/15. 表示 0,15,30,45; 5/15 表示 5,20,35,50 ; */y 等同于 0 /y ;
// L 该字符只能在 日期 和星期中使用 代表 Last的意思 在日期中L 表示该月的最后一天 在星期中 表示星期6 ;
// 由于这里 星期日表示数字1 ,星期一表示2, 星期五表示6。。。。。。
// 但是如果 L出现在星期字段里 , 且 如 6L 表示 每月最后一个 星期 五
// # 只能用在 星期字段中 如: 6#3 表示当月第三个星期五 4#5 表示当月第5个星期3 当月没有第5个星期3,忽略不触发
// Cron 表达式对大小写不敏感
//
/* 一些实例
* 0 0 12 * * ? 每天12:00 运行
* 0 15 10 ? * * 每天10:15 运行
* 0 15 10 * * ? 2008 在2008年的每天10:15运行
* 0 15 10 L * ? 每月最后一天10:15分运行
* 0 15 10 ? * 6L 每月最后一个星期五 10:15 运行
* 0 15 10 ? * 6L 2007-2009
* 0 15 10 ? * 6#3 每月第三个星期五的10:15运行
*
*
*/
CronExpression cronExpression = new CronExpression("0/5 * * * * ?"); // 由 6 或7 个 空格分隔 的 时间字段组成
cronTrigger.setCronExpression(cronExpression); // 设置 cronExpression 表达式
SchedulerFactory schedulerFactory = new StdSchedulerFactory();
Scheduler scheduler = schedulerFactory.getScheduler();
scheduler.scheduleJob(jobDetail, cronTrigger);
scheduler.start();
}
}
任务调度Quartz参数详解
最新推荐文章于 2024-01-11 19:23:19 发布