• SimpleTrigger


    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");



    }
    }

      

  • 相关阅读:
    React后台管理系统-商品管理列表组件
    React后台管理系统-商品列表搜索框listSearch组件
    React后台管理系统-table-list组件
    React后台管理系统-用户列表页面
    React后台管理系统- rc-pagination分页组件封装
    React后台管理系统-登录页面
    React后台管理系统-首页Home组件
    React后台管理系统-后台接口封装
    ThreadLocal的原理、作用、使用弱引用原因、应用举例
    N皇后问题的递归与非递归解法
  • 原文地址:https://www.cnblogs.com/huiandong/p/10230397.html
Copyright © 2020-2023  润新知