首页 > 其他 > 详细

定时任务Quartz入门

时间:2020-02-24 16:14:17      阅读:63      评论:0      收藏:0      [点我收藏+]
package com.hhh.quartz;

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

import java.util.Date;

/**
 * 调度器的具体使用
 * @auto 3hzpf
 * @Date 2020年2月24日15:35:43
 */
public class MySchedule {

    public static void main(String[] args) throws SchedulerException {
        // 1. 获取调度器Schedule
        SchedulerFactory sdf = new StdSchedulerFactory();

        Scheduler scheduler = sdf.getScheduler(); // 获取调度器

        // 2. 获取JobDetail,并于PrintWordJob进行绑定
        JobDetail jobDetail = JobBuilder.newJob(PrintWordJob.class)
                .usingJobData("JobDetail","JobDetail") // 绑定JobDetail参数
                .withIdentity("jobDetail","jobDetailGroup")
                .build();
        Date startDate = new Date();
        startDate.setTime(startDate.getTime() + 5000);

        Date endDate = new Date();
        endDate.setTime(startDate.getTime() + 5000);

        // 3. 获取CronTrigger
        CronTrigger cronTrigger = TriggerBuilder.newTrigger()
                .usingJobData("CronTrigger","CronTrigger")
                .withIdentity("CronTrigger","CronTriggerGroup")
                .startNow()
                .startAt(startDate)
                .endAt(endDate)
                .withSchedule(CronScheduleBuilder.cronSchedule("* * * * * ?")) // 此处使用了Cron表达式
                .build();

        scheduler.scheduleJob(jobDetail,cronTrigger);
        System.out.println("--------scheduler start ! ------------");
        scheduler.start();
        System.out.println("--------scheduler shutdown ! ------------");
    }
}

package com.hhh.quartz;


import com.sun.scenario.effect.impl.sw.sse.SSEBlend_SRC_OUTPeer;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;


/**
* Quart业务逻辑实现类
* @auto 3hzpf
* @Date 2020年2月24日15:35:43
*/
public class PrintWordJob implements Job {


public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
System.out.println("******************************************************************");


// 获取JobDetail参数
System.out.println("JobDetail参数为:" + jobExecutionContext.getJobDetail().getJobDataMap().get("JobDetail"));


// 获取CronTrigger参数
System.out.println("CronTrigger参数为:" + jobExecutionContext.getTrigger().getJobDataMap().get("CronTrigger"));


System.out.println("******************************************************************");
}
}

 

转自: https://blog.csdn.net/noaman_wgs/article/details/80984873

 

 

定时任务Quartz入门

原文:https://www.cnblogs.com/PersonalDiary/p/12357357.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!