Quartz定时任务学习

Quartz定时任务学习

ID:37896020

大小:43.50 KB

页数:5页

时间:2019-06-02

Quartz定时任务学习_第1页
Quartz定时任务学习_第2页
Quartz定时任务学习_第3页
Quartz定时任务学习_第4页
Quartz定时任务学习_第5页
资源描述:

《Quartz定时任务学习》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、Quartz定时任务学习(一)简单任务学习quartz首先了解三个概念:调度器:负责调度作业和触发器;触发器:设置作业执行的时间、参数、条件等;(简单触发器和Cron触发器)作业:定时任务内容,被执行的程序;下载必要的jar包,直接去官网下载,将quartz-x.x.x.jar和core和/或optional文件夹中的jar文件放在项目的文件夹或项目的类路径中Quartz的几个核心的接口和类为:Job接口:自己写的“定时程序”实现此接口的voidexecute(JobExecutionContextarg0)方法,Job还有一类为有状态的StatefulJ

2、ob接口,如果我们需要在上一个作业执行完后,根据其执行结果再进行下次作业的执行,则需要实现此接口。Trigger抽象类:调度类(Scheduler)在时间到时调用此类,再由trigger类调用指定的定时程序。Quertz中提供了两类触发器为:SimpleTrigger,CronTrigger。前者用于实现比较简单的定时功能,例如几点开始,几点结束,隔多长时间执行,共执行多少次等,后者提供了使用表达式来描述定时功能,因此适用于比较复杂的定时描述,例如每个月的最后一个周五,每周的周四等。JobDetail类:具体某个定时程序的详细描述,包括Name,Group

3、,JobDataMap等。JobExecutionContext类:定时程序执行的run-time的上下文环境,用于得到当前执行的Job的名字,配置的参数等。JobDataMap类:用于描述一个作业的参数,参数可以为任何基本类型例如String,float等,也可为某个对象的引用.JobListener,TriggerListener接口:用于监听触发器状态和作业扫行状态,在特写状态执行相应操作。JobStore类:在哪里执行定进程序,可选的有在内存中,在数据库中。开始:边看例题边学习,首先从简单触发器开始……1、作业通过实现org.quartz.job接

4、口,可以使Java类变成可执行的。这个类用一条非常简单的输出语句覆盖了execute(JobExecutionContextcontext)方法。importjava.util.Date;importorg.quartz.Job;importorg.quartz.JobExecutionContext;importorg.quartz.JobExecutionException;publicclassSimpleQuartzJobimplementsJob{   publicSimpleQuartzJob(){   }   publicvoidexecut

5、e(JobExecutionContextcontext)throwsJobExecutionException{       System.out.println("InSimpleQuartzJob-executingitsJOBat"               +newDate()+"by"+context.getTrigger().getName());   }}2、触发器和调度器publicvoidtask()throwsSchedulerException   {       //通过SchedulerFactory来获取一个调度器     

6、  SchedulerFactoryschedulerFactory=newStdSchedulerFactory();       Schedulerscheduler=schedulerFactory.getScheduler();                               //引进作业程序       JobDetailjobDetail=       newJobDetail("jobDetail-s1","jobDetailGroup-s1",SimpleQuartzJob.class);        //new一个触发器  

7、     SimpleTriggersimpleTrigger=       newSimpleTrigger("simpleTrigger","triggerGroup-s1");       //设置作业启动时间       longctime=System.currentTimeMillis();       simpleTrigger.setStartTime(newDate(ctime));       //设置作业执行间隔       simpleTrigger.setRepeatInterval(10000);       //设置作业执行次

8、数       simpleTrigger.setRepeatCo

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。