博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Quartz 教程
阅读量:5171 次
发布时间:2019-06-13

本文共 1717 字,大约阅读时间需要 5 分钟。

目录

Quartz 介绍

一般用来 作业定时调度,比如 要在每周日 执行一次xx操作,就是后台启动一个线程。

与其他产品对比

从实现的技术上来分类,目前主要有三种技术(或者说有三种产品):

  • Java自带的java.util.Timer类,这个类允许你调度一个java.util.TimerTask任务。使用这种方式可以让你的程序按照某一个频度执行,但不能在指定时间运行。一般用的较少,这篇文章将不做详细介绍。
  • 使用Quartz,这是一个功能比较强大的的调度器,可以让你的程序在指定时间执行,也可以按照某一个频度执行,配置起来稍显复杂,稍后会详细介绍。
  • Spring3.0以后自带的task,可以将它看成一个轻量级的Quartz,而且使用起来比Quartz简单许多,稍后会介绍。

下载地址

这里写图片描述

这里写图片描述

Quartz 的核心接口及应用

Quartz 的核心接口 (常用)

这里写图片描述

核心接口之间的关系

这里写图片描述

Trigger

  • SimpleTrigger
    • 每一分中执行一次某一天执行,2016-06-01执行;

    • 这里写图片描述
  • ConTrigger
    • 完成更为复杂的触发 "每个月的最后一天执行
      每个月的第一个星期的第二天中午11:55分执行;
      每年的第二个月的第三个星期第四天晚上20:30分执行;"
    • 这里写图片描述
  • Cron Expressions
    • 用表达式表达程序的调度规则
    • 这里写图片描述

Quartz 简单案例

简单调度

Cron 表达式调度

Quartz 与 Spring 集成

创建一个简单的Job

... extends QuartzJobBean{    @Override    protected void executeInternal(JobExecutionContext context)            throws JobExecutionException {        System.out.println("Myjob 执行了..........."+context.getTrigger().getKey().getName());        ApplicationContext applicationContext = (ApplicationContext)context                .getJobDetail().getJobDataMap().get("adc");        System.out.println(applicationContext);                System.out.println("获取的Spring容器是:" + applicationContext);        System.out.println("当前时间:"+new Date().toString());    }

配置spring

加载spring容器

public static void main(String[] args) {        // 写对应的配置文件        new ClassPathXmlApplicationContext("classpath:Spring.xml");    }

输出 ↓

这里写图片描述

转载于:https://www.cnblogs.com/Vinci/p/5642297.html

你可能感兴趣的文章
单个SWF文件loading加载详解(转)
查看>>
SQLServer中的CTE通用表表达式
查看>>
C# 3.0 LINQ的准备工作
查看>>
静态代码审查工具FxCop插件开发(c#)
查看>>
创建代码仓库
查看>>
理解裸机部署过程ironic
查看>>
Django 组件-ModelForm
查看>>
zabbix 二 zabbix agent 客户端
查看>>
大数据分析中,有哪些常见的大数据分析模型?
查看>>
如何防止Arp攻击
查看>>
ClassList 标签的用法
查看>>
小细节:Java中split()中的特殊分隔符 小数点
查看>>
【编程思想】【设计模式】【行为模式Behavioral】中介者模式Mediator
查看>>
后端接口时间戳或者随机数的作用
查看>>
tomcat docBase 和 path
查看>>
java默认语法、EL、JSTL表达式,JSTL和struts Tag标签的使用总结
查看>>
Vue笔记:使用 axios 发送请求
查看>>
富文本编辑器 - RichEditor
查看>>
java webcontroller访问时报415错误
查看>>
qcow2、raw、vmdk等镜像格式
查看>>