Java 中Quartz应用 (2)
来源:互联网 发布:mac vmware 安装win7 编辑:程序博客网 时间:2024/04/30 12:43
quartz中的CronTrigger是仿照Unix的Crontab的定时任务,进行任务启动的。
CronTrigger配置格式:
序号: 说明 是否为必填 允许填写值 允许的通配符
1. 秒 是 0-59 , - * /
2. 分 是 0-59 , - * /
3. 时 是 0-23 , - * /
4. 日 是 1-31 , - * ? / L W
5. 月 是 1-12 or JAN-DEC , - * /
6. 周 是 1-7 or SUN-SAT , - * ? / L W
7. 年 否 empty or 1970-2099 , -* /
通配符的说明:
* 表示所有值。
? 表示不定值。使用的场景为不需要关心当前设置这个字段的值。例如:要在每月的10号触发一个操作,但不关心是周几,所以需要周位置的那个字段设置为 0 0 0 10 * ?
- 表示区间 。例如在小时上设置"10-12",表示10,11,12点都会触发
, 表示指定多个值,例如在周字段设置 "MON,WED,FRI",表示周一,周三和周五触发。
/ 表示用于递增触发。如在秒上面设置"5/15",表示从5秒开始,每增15秒触发(5,20,35,50)
L 表示最后的意思。在日字段设置上,表示当月的最后一天,在周字段上表示星期六,相当于7或SAT。如果在L前加上数字,
则表示该数据的最后一个。例如在周字段上设置“6L”这样的格式,则表示“本月最后一个星期五”
W 表示离指定日期最近的那个工作日(周一至周五),例如在日字段上设置“15W”,表示离每月15号最近的那个工作日触发。如果15号是周六,
则找最近的周五(14号触发),如果15号是周末,则找最近的下周一(16号)触发。如果15号正好是工作日,则当天触发。
注意:如果指定的格式为“1W”,则表示每月的1号往后的最近工作日触发。如果1号是周六,则将在3号(下周一)触发。
# 序号 表示每月的第几个周几,例如在周字段上设置“6#3”表示在每月的第三个周六。注意如果指定“6#5”正好第五周没有周六,则不会触发该配置。
提示:
“L”和“W”可以组合使用。如果在日字段上设置“LW”,则表示在本月的最后一个工作日触发(一般指发工资);
周字段的设置,若使用英文字母是不缺分大小写的。
CronTrigger样例使用:
public class QuartzTest implements Job {
public void execute(JobExecutionContext context) throws JobExecutionException {
System.out.println("任务执行开始");
}
public void task() throws ParseException{
SchedulerFactory schedulerFactory = new StdSchedulerFactory();
Scheduler scheduler = schedulerFactory.getScheduler();
JobDetail jobDetail = new JobDetail("jobdetail1","defaultgroup",this.getClass());
CronTigger cronTrigger = new CronTrigger("cron1","defaultgroup");
CronExpression cexp = new CronExpression("0/1 * * * * ?");
cronTrigger.setCronExpression(cexp);
scheduler .scheduleJob(jobDetail,simpleTrigger);
scheduler .start();
}
}
- Java 中Quartz应用 (2)
- Java 中Quartz应用 (1)
- java项目中定时任务之Quartz的应用
- Quartz-Java Web项目中使用Quartz
- java中quartz 调度在一些定时任务(job)的入门级应用
- quartz 在WEB中应用小结
- Quartz java实例解析,web应用
- java定时框架Quartz的简单应用
- 任务调度2-----Java中使用Quartz框…
- quartz应用
- java 中对Quartz表达式的执行
- Quartz 在Java Web Application中使用
- Quartz 在Java Web Application中使用
- Quartz 在Java Web Application中使用
- Java程序中作业调度-Quartz
- java spring中配置quartz定时任务
- quartz调度框架在web中应用实例
- 【JAVA秒会技术之搞定Quartz定时任务】Quartz在Spring中的集成与应用
- php empty()和isset()的区别
- Android Native C development (2) -- framebuffer
- Bilateral Filtering
- 自动加载ThinkPHP的类库方式
- Java泛型的好处
- Java 中Quartz应用 (2)
- 走出安全误区之谁能保护Web应用
- 《楚汉传奇》有感
- Linux下的动态库
- ubuntu 登陆后又回到登录界面 因为配置sdk环境变量
- 一个蛋糕只允许切3刀平均分给5个小朋友(趣味数学)
- kernel 中 sscanf和sprintf()函数使用说明
- Linux:Ldd命令介绍及使用方法
- 内存泄露和内存溢出是什么?他们之间的区别是什么?