美文网首页
Quartz-java定时任务案例

Quartz-java定时任务案例

作者: 紫玥迩 | 来源:发表于2016-07-18 16:37 被阅读165次

简介

完全由java编写的开源作业调度框架
Quartz有两大触发器:SimpleTrigger和CronTrigger
使用CronTrigger要掌握Cron表达式

"30 * * * * ?"          #每半分钟触发任务
"30 10 * * * ?"         #每小时的10分30秒触发任务
"30 10 1 * * ?"         #每天1点10分30秒触发任务
"30 10 1 20 * ?"        #每月20号1点10分30秒触发任务
.......
Paste_Image.png

Maven

<dependency>
    <groupId>org.quartz-scheduler</groupId>
    <artifactId>quartz</artifactId>
    <version>2.2.3</version>
</dependency>
<dependency>
    <groupId>org.quartz-scheduler</groupId>
    <artifactId>quartz-jobs</artifactId>
    <version>2.2.3</version>
</dependency> 

quartz.properties

org.quartz.scheduler.instanceName = MyScheduler
org.quartz.threadPool.threadCount = 3
org.quartz.jobStore.class = org.quartz.simpl.RAMJobStore

HelloJob.java

public class HelloJob implements Job {

    public void execute(JobExecutionContext arg0) throws JobExecutionException {
        System.out.println("HelloJob...."+new Date());
    }
    
}

QuartzTest

    public static void main(String[] args) throws InterruptedException {
        Scheduler scheduler;
        try {
            scheduler = StdSchedulerFactory.getDefaultScheduler();
            System.out.println("quartz start....");
            scheduler.start();
            /**********************doWork() start**************/
            //每五秒执行一次
            JobDetail jobDetail = JobBuilder.newJob(HelloJob.class).withIdentity("job1","group1").build();
            SimpleScheduleBuilder simpleScheduleBuilder = SimpleScheduleBuilder.simpleSchedule().withIntervalInSeconds(5).repeatForever();
            Trigger trigger = TriggerBuilder.newTrigger().withIdentity("trigger1", "group1").startNow().withSchedule(simpleScheduleBuilder).build();
            scheduler.scheduleJob(jobDetail, trigger);
            TimeUnit.MINUTES.sleep(1);
            /**********************doWork() end**************/
            System.out.println("quartz shutdown....");
            scheduler.shutdown();
        } catch (SchedulerException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        
    }

参考

官网quick-start
官网cookbook
【Quartz】Quartz的搭建、应用(单独使用Quartz)
Quartz-v1.8.6
Quartz cron表达式格式

相关文章

  • Quartz-java定时任务案例

    简介 完全由java编写的开源作业调度框架Quartz有两大触发器:SimpleTrigger和CronTrigg...

  • 尚硅谷大数据技术之Oozie

    4.4 案例四:Oozie定时任务/循环任务目标:Coordinator周期性调度任务分步实现:1) 配置Lin...

  • 各种简书之外的经验网址记录

    1、SpringBoot定时任务案例https://www.cnblogs.com/mmzs/p/10161936...

  • 【企业故障案例】You have new mail in /va

    运维学习交流群-点我加群:598972270这是一个来自于 定时任务部分的故障案例 也是书写问题. 在定时任务里面...

  • 工作中的spring定时任务

    直接案例代码 【定时案例1】 【定时案例2】 over!!!!!!!!!!!

  • 2019-07-31定时任务

    定时任务 定时任务实现方法 系统默认定时任务 用户自定义设置定时任务 定时任务配置文件 定时任务启动 定时任务样例...

  • 分布式定时调度-xxl-job

    一、定时任务概述 1.1 定时任务认识 1.1.1 什么是定时任务 定时任务是按照指定时间周期运行任务。使用场景为...

  • day 22 操作系统定时任务

    系统定时任务概念==生活中闹钟 系统定时任务实现方法: 实现定时任务配置: 定时任务如何进行设置 定时任务编写常见...

  • 7月30日 定时任务

    定时任务 代替人自动完成一些任务 定时任务实现的方法 定时任务软件:cronie定时任务软件:atd --- 设...

  • SpringBoot 定时任务

    1.如何定时任务 1.1 开启定时任务 1.2 @Scheduled(预定的)选择要定时执行的任务 == 定时在前...

网友评论

      本文标题:Quartz-java定时任务案例

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