我是靠谱客的博主 开放饼干,最近开发中收集的这篇文章主要介绍Quartz定时执行程序,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Quartz是一个定时任务执行的框架。

几个概念:

    Scheduler :计划者
    CronTrigger :触发条件
    JobDetail :任务的细节
    Job :具体执行的任务


1 创建具体任务:编写一个类实现Job接口,把定时执行的任务代码写在该类的execute方法中

import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
public class QuartzTest implements Job {
private static final Logger logger=LogManager.getLogger(QuartzTest.class);
@Override
public void execute(JobExecutionContext arg0) throws JobExecutionException {
//定时任务代码
}
}

2启动定时任务,见示例代码

//设定loadOnStartup=1,网站启动的时候立即执行
@WebServlet(value="/QuartzInitServlet", loadOnStartup=1)
public class QuartzInitServlet
extends HttpServlet {
private static final Logger logger=LogManager.getLogger(QuartzInitServlet.class);
@Override
public void init() throws ServletException {
super.init();
try{
//计划者
Scheduler
scheduler=StdSchedulerFactory.getDefaultScheduler();
//任务的细节,具体执行的任务在QuartzTest类中
JobDetail job=JobBuilder.newJob(QuartzTest.class).build();
//定时出发条件
CronScheduleBuilder cronScheduleBuidler=
CronScheduleBuilder.cronSchedule("5/10 51 14 * * ?").inTimeZone(TimeZone.getTimeZone("GMT+08:00"));//注意设置时区
CronTrigger trigger=TriggerBuilder.newTrigger().withSchedule(cronScheduleBuidler).build();
scheduler.scheduleJob(job,trigger);
//启动
scheduler.start();
}
catch(Throwable e){
logger.error("定时任务出错",e);
}
}
}




最后

以上就是开放饼干为你收集整理的Quartz定时执行程序的全部内容,希望文章能够帮你解决Quartz定时执行程序所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(48)

评论列表共有 0 条评论

立即
投稿
返回
顶部