文档详情

定时任务 -Java框架介绍Quartz调度器从入门到进阶.doc

发布:2017-12-24约1.19万字共17页下载文档
文本预览下载声明
定时任务 -Java框架介绍Quartz调度器从入门到进阶 /edupxpt/233/2209233.shtml Java框架介绍:Quartz从入门到进阶(图) ------------------------------------------------- quartz 入门学习 在学习spring的时候,就接触过quartz。 引用 从Java 5.0开始,java.util.concurrent包中增加了一个ScheduledThreadPoolExecutor类,用来实现定时任务和线程池的管理,比起Timer简陋的实现是要强大得多了,可能也是Quartz不再开发的一个重要原因 虽然jdk中已经加入了scheduledthreadpoolexecutor等一系列的类,但发现人们还是很中爱quartz。 学习下。 第一步:获得引用: Java代码 SchedulerFactory sf = new StdSchedulerFactory(); Scheduler sched = sf.getScheduler(); SchedulerFactory sf = new StdSchedulerFactory(); Scheduler sched = sf.getScheduler(); 第二步:创建job Java代码 JobDetail job = new JobDetail(job1, group1, SimpleJob.class); JobDetail job = new JobDetail(job1, group1, SimpleJob.class); 第三步:创建触发器 Java代码 SimpleTrigger trigger = new SimpleTrigger(trigger1, group1, new Date(ts)); SimpleTrigger trigger = new SimpleTrigger(trigger1, group1, new Date(ts)); 第四步:安排工作 Java代码 sched.scheduleJob(job, trigger); sched.scheduleJob(job, trigger); 第五步:计划开始 Java代码 sched.start(); sched.start(); 第六步:关闭计划 Java代码 sched.shutdown(true); sched.shutdown(true); quartz的开发步骤基本上就是这样。 还有别的一些要点,比如:cron表达式。。 -------------------------------------------------   你曾经需要应用执行一个任务吗?这个任务每天或每周星期二晚上11:30,或许仅仅每个月的最后一天执行。一个自动执行而无须干预的任务在执行过程中如果发生一个严重错误,应用能够知到其执行失败并尝试重新执行吗?你和你的团队是用java编程吗?如果这些问题中任何一个你回答是,那么你应该使用Quartz调度器。      旁注:Matrix目前就大量使用到了Quartz。比如,排名统计功能的实现,在Jmatrix里通过Quartz定义了一个定时调度作业,在每天凌晨一点,作业开始工作,重新统计大家的Karma和排名等。      还有,RSS文件的生成,也是通过Quartz定义作业,每隔半个小时生成一次RSS XML文件。      所以Quartz使用的地方很多,本文无疑是一篇很好的入门和进阶的文章,在此,感谢David w Johnson的努力!      Quartz让作业调度简单      Quartz是一个完全由java编写的开源作业调度框架。不要让作业调度这个术语吓着你。尽管Quartz框架整合了许多额外功能, 但就其简易形式看,你会发现它易用得简直让人受不了!。简单地创建一个实现org.quartz.Job接口的java类。Job接口包含唯一的方法:      public void execute(JobExecutionContext context)   throws JobExecutionException;      在你的Job接口实现类里面,添加一些逻辑到execute()方法。一旦你配置好Job实现类并设定好调度时间表,Quartz将密切注意剩余时间。当调度程序确定该是通知你的作业的时候,Quartz框架将调用你Job实现类(作业类)上的execute()方法并允许做它该做的事情。无需报
显示全部
相似文档