学习开源任务调度框架Quartz

1.首先第一步,固然是引入依赖啦,maven仓库中最新的版本是2.3.0框架

<!-- https://mvnrepository.com/artifact/org.quartz-scheduler/quartz -->
        <dependency>
            <groupId>org.quartz-scheduler</groupId>
            <artifactId>quartz</artifactId>
            <version>2.3.0</version>
        </dependency>

2.进行一个简单的例子,来学习此框架maven

import org.quartz.JobDetail;
import org.quartz.Scheduler;
import org.quartz.SchedulerException;
import org.quartz.Trigger;
import org.quartz.impl.StdSchedulerFactory;

import static org.quartz.JobBuilder.newJob;
import static org.quartz.SimpleScheduleBuilder.simpleSchedule;
import static org.quartz.TriggerBuilder.newTrigger;

/**
 * QuartzTest class
 *
 * @author guanhuifang
 * @date 2018/1/4 下午3:31
 **/
public class QuartzTest {
    public static void main(String[] args) {
        try {

            //建立一个定时任务调度器
            Scheduler scheduler = StdSchedulerFactory.getDefaultScheduler();
            //定时任务启动
            scheduler.start();

            //新建一个触发器,开始时间是如今,每间隔40s重复
            Trigger trigger = newTrigger().withIdentity("trigger1", "group1")
                    .startNow()
                    .withSchedule(simpleSchedule().withIntervalInSeconds(10).repeatForever()).build();
            //定义name/group


            //建立一个job任务数据,
            JobDetail job = newJob(HelloJob.class)
                    .withIdentity("job1", "group1")
                    .build();


            scheduler.scheduleJob(job, trigger);

            try {
                Thread.sleep(100*1000);  //为毫秒级别,先执行100s再说
            } catch (InterruptedException e) {
                e.printStackTrace();
            }

            scheduler.shutdown();
        } catch (SchedulerException e) {
            e.printStackTrace();
        }
    }
}

3.运行结果以下:学习

相关文章
相关标签/搜索