美文网首页
quartz入门

quartz入门

作者: 蚁丶点 | 来源:发表于2018-11-18 00:18 被阅读0次

    jar包(从官网下)



    Job(要运行的业务代码)

    import java.text.SimpleDateFormat;
    import java.util.Date;
    
    import org.quartz.Job;
    import org.quartz.JobExecutionContext;
    import org.quartz.JobExecutionException;
    
    public class TestJob implements Job {
    
        @Override
        public void execute(JobExecutionContext arg0) throws JobExecutionException {
            // TODO Auto-generated method stub
            Date date = new Date();
            SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
            String format = simpleDateFormat.format(date);
            System.out.println(format);
        }
    
    }
    

    开始运行

    import org.quartz.JobBuilder;
    import org.quartz.JobDetail;
    import org.quartz.Scheduler;
    import org.quartz.SimpleScheduleBuilder;
    import org.quartz.Trigger;
    import org.quartz.TriggerBuilder;
    import org.quartz.impl.StdSchedulerFactory;
    
    import job.TestJob;
    
    public class SchedulerDemo {
    
        public static void main(String[] args) {
            try {
                //创建scheduler
                Scheduler scheduler = StdSchedulerFactory.getDefaultScheduler();
    
                //定义一个Trigger
                Trigger trigger = TriggerBuilder.newTrigger().withIdentity("trigger1", "group1") //定义name/group
                    .startNow()//一旦加入scheduler,立即生效
                    .withSchedule(SimpleScheduleBuilder.simpleSchedule() //使用SimpleTrigger
                        .withIntervalInSeconds(3) //每隔一秒执行一次
                        .repeatForever()) //一直执行,奔腾到老不停歇
                    .build();
    
                //定义一个JobDetail
                JobDetail job = JobBuilder.newJob(TestJob.class) //定义Job类为HelloQuartz类,这是真正的执行逻辑所在
                    .withIdentity("job1", "group1") //定义name/group
                    .usingJobData("name", "quartz") //定义属性
                    .build();
    
                //加入这个调度
                scheduler.scheduleJob(job, trigger);
    
                //启动之
                scheduler.start();
    
                //运行一段时间后关闭
                Thread.sleep(10000);
                scheduler.shutdown(true);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    
    }
    

    运行效果


    image.png

    相关文章

      网友评论

          本文标题:quartz入门

          本文链接:https://www.haomeiwen.com/subject/erdwfqtx.html