zoukankan      html  css  js  c++  java
  • 【Quartz】一个小Demo

      Quartz是一个优秀的框架,功能强大,用法简单,比如说下面这个例子。

    (1)引入Jar包

    <!-- quartz 模块 -->
    <dependency>
        <groupId>org.quartz-scheduler</groupId>
        <artifactId>quartz</artifactId>
        <version>2.3.0</version>
    </dependency>
    <dependency>
        <groupId>org.quartz-scheduler</groupId>
        <artifactId>quartz-jobs</artifactId>
        <version>2.3.0</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context-support</artifactId>
    </dependency>

    (2)写一个任务(Job)

    import org.quartz.Job;
    import org.quartz.JobExecutionContext;
    import org.quartz.JobExecutionException;
    
    import java.util.Date;
    
    public class TimeJob implements Job {
    
        @Override
        public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
            System.out.println("Now is " + new Date());
        }
    }

    (3)写执行类

    import org.quartz.*;
    
    import static org.quartz.JobBuilder.newJob;
    import static org.quartz.SimpleScheduleBuilder.simpleSchedule;
    import static org.quartz.TriggerBuilder.newTrigger;
    
    public class QuartzDemo {
        public static void main(String[] args) throws SchedulerException {
            SchedulerFactory schedFact = new org.quartz.impl.StdSchedulerFactory();
    
            Scheduler sched = schedFact.getScheduler();
    
            sched.start();
    
            // define the job and tie it to our HelloJob class
            JobDetail job = newJob(TimeJob.class)
                    .withIdentity("myJob", "group1")
                    .build();
    
            // Trigger the job to run now, and then every 5 seconds
            Trigger trigger = newTrigger()
                    .withIdentity("myTrigger", "group1")
                    .startNow()
                    .withSchedule(simpleSchedule()
                            .withIntervalInSeconds(5)
                            .repeatForever())
                    .build();
    
            // Tell quartz to schedule the job using our trigger
            sched.scheduleJob(job, trigger);
        }
    }

     

  • 相关阅读:
    使用Ruby On Rails建立一个山寨小说站(一)
    sql server 数据库备份概述
    JVM崩溃的原因及解决!
    C++中的字节对齐
    jqueyr用jsonp跨越,有服务器端代码(.net(C#语言))
    lammps_data文件
    jquery日历插件_时间范围_双日历_多日历
    js 判断所选时间(或者当前时间)是否在某一时间段
    webstorm安装时遇到The JVM could not be started的解决方法
    Webstorm快捷键
  • 原文地址:https://www.cnblogs.com/xiongxx/p/8960832.html
Copyright © 2011-2022 走看看