码迷,mamicode.com
首页 > 其他好文 > 详细

SimpleTrigger

时间:2019-01-06 21:58:25      阅读:252      评论:0      收藏:0      [点我收藏+]

标签:system   ring   highlight   优先   执行时间   exception   init   uart   factor   

SimpleTrigger:在指定时间执行一次任务,或在指定时间执行多次任务。

重复次数可以是0,正整数,或者是SimpleTrigger.REPEAT_INDEFINITELY无限重复。

重复执行间隔必须为0或长整数

endTime覆盖重复次数

package com.huiandong;

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

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

public class QTest {
    public static void main(String[] args) throws SchedulerException {
        Date date = new Date();
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        String format = sdf.format(date);

        //创建一个JobDetail示例,将该实例与HelloJobClass绑定
        JobDetail jobD = JobBuilder.newJob(QuartzJob.class)
                .withIdentity("quartz1")
                .build();
        date.setTime(date.getTime()+4000);



        Date date2 = new Date();
        date2.setTime(date2.getTime()+6000);
        //创建一个Trigger实例,定义该job立即执行,每隔2s重复执行
        //距离当前时间4s后执行且执行一次
        SimpleTrigger trig = (SimpleTrigger)TriggerBuilder.newTrigger()
                .withIdentity("Trigger", "group1")
                .withSchedule
                        (SimpleScheduleBuilder.simpleSchedule().withIntervalInMilliseconds(2000)
//                        .withRepeatCount(SimpleTrigger.REPEAT_INDEFINITELY))//永远执行
                        .withRepeatCount(3))//第一次执行后接着执行3次
                .startAt(date)
                .endAt(date2)//优先于执行次数
                .build();

        //创建scheduler实例
        SchedulerFactory sf=new StdSchedulerFactory();

        Scheduler sche = sf.getScheduler();
        sche.start();
        System.out.println(format);
        sche.scheduleJob(jobD,trig);
    }
}




package com.huiandong;

import org.quartz.*;

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

public class QuartzJob implements Job{

public void execute(JobExecutionContext jec) throws JobExecutionException {
//打印当前的执行时间,格式为2017-01-01 00:00:00

Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String format = sdf.format(date);

System.out.println(date);
System.out.println("hello world");



}
}

  

SimpleTrigger

标签:system   ring   highlight   优先   执行时间   exception   init   uart   factor   

原文地址:https://www.cnblogs.com/huiandong/p/10230397.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!