zoukankan      html  css  js  c++  java
  • (一)Quartz2.2.1 简单例子

    转载至http://blog.csdn.net/a4307515/article/details/46985533

    1.关键接口

    • Scheduler,任务调度的API;它可以用来启动或者终止任务等。
    • Job,具体的任务接口;通过实现它,来让任务调度执行具体的任务。
    • JobDetail ,用来定义Job的实例。
    • Trigger ,触发器用来定义给定的Job应该如何执行。
    • JobBuilder ,用来定义/构建Jobdetail实例。
    • TriggerBuilder ,用来定义/构建Trigger实例。

    2.简单例子

    下面是一个简单的例子,创建一个简单的任务调度。

    创建一个Job,名为HelloJob:

    package me.shijunjie.quartz;
    
    import java.util.Date;
    
    import org.quartz.Job;
    import org.quartz.JobExecutionContext;
    import org.quartz.JobExecutionException;
    
    public class QuartzTestJob implements Job {
    
        @Override
        public void execute(JobExecutionContext context) throws JobExecutionException {
            System.out.println("Hello, Quartz! - executing its JOB at "+ 
                    new Date() + " by " + context.getTrigger().getJobKey().getName());
        }
    
    }
    

    实现Job接口中的execute方法,这个方法中是我们需要任务调度执行的具体内容

    首先,创建JobDetail:

    JobDetail jobDetail = JobBuilder.newJob(QuartzTestJob.class)
                                        .withIdentity("testQuartzJob", "group1").build();
    

    然后,创建Trigger:

    Trigger trigger = TriggerBuilder.newTrigger().withIdentity("myTrigger", "group1")
                                .startNow().withSchedule(SimpleScheduleBuilder.simpleSchedule()
                                                            .withIntervalInSeconds(5).withRepeatCount(3)).build();
    

    最后,获取Scheduler,并启动任务:  

    SchedulerFactory schedulerFactory = new StdSchedulerFactory();
    Scheduler scheduler = schedulerFactory.getScheduler();
    //添加job,以及其关联的trigger
    scheduler.scheduleJob(jobDetail, trigger);
    //启动job
    scheduler.start();
    

    运行结果如下

      

  • 相关阅读:
    pytest框架运用
    unitTest学习
    发送邮件
    python 连接远程服务器,修改时间
    Redis基础
    django 知识点扩展
    ACM 题目 1487: [蓝桥杯][算法提高VIP]不同单词个数统计
    Leetcode 面试题 08.01. 三步问题
    Leetocode 198. 打家劫舍
    Leetcode 121. 买卖股票的最佳时机
  • 原文地址:https://www.cnblogs.com/s648667069/p/6612142.html
Copyright © 2011-2022 走看看