Quartz任务调度--02(第一个定时任务程序)

1.上一节我们讲解了Quartz的简介。
这一节我将开始创建第一个Quartz程序。
本次演示使用的是Maven创建的工程。因此不了假Mavne的同学可以自行百度一下有关Maven的知识。
1.创建一个Mavne项目。在Pom.xml中引入Quartz需要的依赖

<dependency>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz</artifactId>
<version>2.3.0</version>
</dependency>

2.创建一个HelloJob类是我们在需要执行的任务。这次的任务是每隔两秒打印一句HelloWord 且永远不停止(除非程序出现异常被中断)。
HelloJob代码如下:

public class HelloJob  implements Job{

    public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
        Date date  =new Date();
        SimpleDateFormat simpleDateFormat =new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        System.out.println("执行的时间是:"+simpleDateFormat.format(date));
        System.out.println("Hello Word");
    }
}

3.创建一个测试类
HelloScheduler:
package com.unitop.Demo01;

import org.quartz.*;
import org.quartz.impl.StdSchedulerFactory;

import java.text.SimpleDateFormat;
import java.util.Date;

public class HelloScheduler {

public static void main(String[] args) throws Exception{
    //创建一个Jobtail实例,将该实例于HelloJob 绑定
    JobDetail jobDetail = JobBuilder.newJob(HelloJob.class).withIdentity("myjob","group1").build();
    //创建一个Trigger实例(g该实例定义执行的时间)
    //立即执行,每隔两秒钟执行一次,永久不停息。
    Trigger trigger = TriggerBuilder.newTrigger().withIdentity("myTrigger","group1")
            .startNow().withSchedule(SimpleScheduleBuilder.simpleSchedule().withIntervalInSeconds(2).repeatForever()).build();

    //创建Schedule实例
    SchedulerFactory schedulerFactory  =new StdSchedulerFactory();
    Scheduler scheduler = schedulerFactory.getScheduler();//获取Schedule实例
    scheduler.start();//开始执行
    Date date  =new Date();
    SimpleDateFormat simpleDateFormat =new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    System.out.println("开始的时间是:"+simpleDateFormat.format(date));
    //绑定JobDeatil 和Trigger
    scheduler.scheduleJob(jobDetail,trigger);
        }

}
执行程序之后Hello Word会每间隔两秒执行一次 且永不停止(除非出现意外的情况)。

猜你喜欢

转载自blog.csdn.net/weixin_37546725/article/details/81369681
今日推荐