quartz调度实例
来源:互联网 发布:python 获取字典的值 编辑:程序博客网 时间:2024/06/05 04:00
import java.text.SimpleDateFormat;import java.util.Date;import org.quartz.Job;import org.quartz.JobExecutionContext;import org.quartz.JobExecutionException;public class MyJob implements Job{@Overridepublic void execute(JobExecutionContext arg0) throws JobExecutionException { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS"); System.out.println(sdf.format(new Date())); }}
import java.text.SimpleDateFormat;import java.util.Date;import static org.quartz.JobBuilder.newJob; import static org.quartz.TriggerBuilder.newTrigger; import org.quartz.CronTrigger;import org.quartz.JobDetail;import org.quartz.Scheduler;import org.quartz.SchedulerFactory;import org.quartz.impl.StdSchedulerFactory;import static org.quartz.CronScheduleBuilder.cronSchedule;public class Test {public void go() throws Exception {// 获取一个Scheduler的实例SchedulerFactory factory = new StdSchedulerFactory();Scheduler scheduler = factory.getScheduler();// jobs可以在scheduled的sched.start()方法前被调用// job 1将每隔20秒执行一次JobDetail job = newJob(MyJob.class).withIdentity("job1", "group1").build();CronTrigger trigger = newTrigger().withIdentity("trigger1", "group1").withSchedule(cronSchedule("0/5 * * * * ?")).build();Date ft = scheduler.scheduleJob(job, trigger);SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS");System.out.println(job.getKey() + " 已被安排执行于: " + sdf.format(ft)+ ",并且以如下重复规则重复执行: " + trigger.getCronExpression());// job 2将每2分钟执行一次(在该分钟的第15秒) 格式: [秒] [分] [小时] [日] [月] [周] [年]job = newJob(MyJob.class).withIdentity("job2", "group1").build();trigger = newTrigger().withIdentity("trigger2", "group1").withSchedule(cronSchedule("15 0/2 * * * ?")).build();ft = scheduler.scheduleJob(job, trigger);System.out.println(job.getKey() + " 已被安排执行于: " + sdf.format(ft)+ ",并且以如下重复规则重复执行: " + trigger.getCronExpression());// 开始执行,start()方法被调用后,计时器就开始工作,计时调度中允许放入N个Jobscheduler.start();try {// 主线程等待一分钟Thread.sleep(10L * 1000L);} catch (Exception e) {}// 关闭定时调度,定时器不再工作scheduler.shutdown(true);}public static void main(String[] args) throws Exception {Test test = new Test();test.go();}}
结果展示:
group1.job1 已被安排执行于: 2017-06-26 14:50:15 000,并且以如下重复规则重复执行: 0/5 * * * * ?
group1.job2 已被安排执行于: 2017-06-26 14:50:15 000,并且以如下重复规则重复执行: 15 0/2 * * * ?
2017-06-26 14:50:15 023
2017-06-26 14:50:15 023
2017-06-26 14:50:20 010
阅读全文
0 0
- quartz调度实例
- Quartz任务调度模型实例
- 任务调度框架Quartz实例
- Java任务调度框架Quartz教程实例
- Java任务调度框架Quartz教程实例
- Java任务调度框架Quartz教程实例
- Java任务调度框架Quartz教程实例
- Java任务调度框架Quartz教程实例
- Java任务调度框架Quartz教程实例
- Java任务调度框架Quartz教程实例
- Java任务调度框架Quartz教程实例
- Java任务调度框架Quartz教程实例
- Quartz调度
- Quartz调度
- quartz调度
- Spring框架结合Quartz实现任务调度实例
- spring定时器 Quartz 进行作业调度简介 实例
- Quartz定时调度CronTrigger时间配置格式说明与实例
- 传智黑马Python在线就业班-2017版
- CloseableHttpAsyncClient忽略https的证书验证
- SSM框架前后端数据交互
- JQuery中去掉字符串首尾的空白字符
- javascript基础语法
- quartz调度实例
- Git提交和推送的区别
- 【踩坑】PHP中关于运算符优先级使用中可能遇到的问题
- 165. Compare Version Numbers
- bzoj3750: [POI2015]Pieczęć
- Hive 使用RegexSerDe来处理标准格式Apache Web日志
- 字节码分析finally块对return返回值的影响
- 安卓之USB主机(Host)与配件(Accessory)模式
- android四大组件(详细总结)