Quartz API核心接口有Scheduler:(调度器)与scheduler交互的主要API; Job:(作业)你通过scheduler执行任务,你的任务类需要实现的接口; JobDetail:(作业实例)定义Job的实例; Trigger:(触发器)触发Job的执行; JobBuilder:定义和创建JobDetail实例的接口; TriggerBuilder:定义和创建Trigg...
7年前 (2017-09-12)
阅读(7167)
赞一个 (3)
链接直达
使用场景使用quartz做为后台任务调度框架,cron表达式设置时间,需要根据cron表达式计算出最近n次的执行具体时间--这个通常在开放给用户修改任务执行时间给出提示时非常有用解决:使用quartz的jar包中提供的TriggerUtils类来计算1、先根据corn算出执行时间例如:获取着一个月内 每天早上10:15触发的日期import org.quartz.TriggerUtils;
import org.q...
7年前 (2017-09-12)
阅读(4413)
赞一个 (1)
链接直达
主要参考了:xhEditor文件上传的Java实现http://easin.iteye.com/blog/692390 另外使用了xhEditor的最新版本:xheditor-1.1.9,上传组件包:smart-upload,json包: xhEditor官方网站:http://xheditor.com/下载网址:http://code.google.com/p/xheditor/downloads/listjson...
7年前 (2017-09-12)
阅读(2209)
赞一个 (0)
链接直达
由于业务需要,停止Quartz中正在执行的任务
1、任务类只需要实现InterruptableJob类,然后实现interrupt()方法。
2、在这个方法中进行标记的改变,在执行中进行这个标记判断,就可实现中断任务了
3、另外在调度器上调用方法:sched.interrupt(job.getKey())
源码示例:...
7年前 (2017-09-12)
阅读(5660)
赞一个 (2)
链接直达
异常处理本文根据官网示例说明Quartz在job执行异常情况时的处理。参考官方原文:http://www.quartz-scheduler.org/documentation/quartz-2.2.x/examples/Example6.html本文涉及3个类:BadJob1.java、BadJob2.java 和一个调度类 JobExceptionExample.javaBadJob1.javapackage com.ans...
7年前 (2017-09-11)
阅读(5372)
赞一个 (3)
链接直达
不知道大家在用Quartz的时候 有没有遇到这样一种情况:触发器设定每3秒钟触发一次 ,但是工作需要10秒钟的执行时间.因此,在一次任务结束执行前,触发器已经错失触发当这种情况下我们怎么处理呢,让我们一起学习一下......代码参照Quartz官方提供的示例5job类:StatefulDumbJob.javapackage com.anson.examples.example5;
import org.quar...
7年前 (2017-09-11)
阅读(4657)
赞一个 (2)
链接直达
通过第一篇文章的学习,已经初步认识了定时任务,如果说想要在执行任务时,将一些动态的值,传递给execute方法该怎么处理呢?JobDataMapJobDataMap可用于保存任何数量的(可序列化的)数据对象,您希望在执行时可以将其提供给作业实例。JobDataMap是Java Map接口的一个实现,并且有一些用于存储和检索原始类型的数据的方便方法。改造之后的测试方法如下调用,用的是usingJobData方法// 具体任务&n...
7年前 (2017-09-10)
阅读(8764)
赞一个 (2)
链接直达
使用xml的方式,会配置很多bean的信息,如果使用注解的方式,会更方便运用,配置注解相对简单注解配置spring配置文件里增加命令空间: xmlns:task="http://www.springframework.org/schema/task"
http://www.springframework.org/schema/task
http://w...
7年前 (2017-09-10)
阅读(3856)
赞一个 (2)
链接直达
Quartz for Spring集成源码log4j.xml<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration x...
7年前 (2017-09-09)
阅读(3033)
赞一个 (0)
链接直达
常用的Cron Schedule相对于其他方式定义定时任务的触发时间,我们较常用Cron Schedule,大概是触发时间点的配置看起来比较简洁吧Cron Schedule的使用// 具体任务
JobDetail job = JobBuilder.newJob(HelloJob.class).withIdentity("job1", "group1&quo...
7年前 (2017-09-09)
阅读(5621)
赞一个 (0)
链接直达
在Web应用中使用QuartzQuartz也常用在Web应用中,常见的是交由Spring托管的形式,但这里并非介绍这个。这里介绍Quartz在Web应用中单独使用。一般来说,Web应用启动时,应注册已经确定的定时任务;一些动态的、未确定触发时间的定时任务,后续可通过静态的Scheduler注册。这里使用监听器在应用启动时注册,记得在web.xml注册这个监听器哦;在关闭Web应用时,也要相应的注销定时任务。其他配置文件、Java类与上例...
7年前 (2017-09-09)
阅读(3392)
赞一个 (2)
链接直达
Quartz 详细介绍Quartz是一个开源的作业调度框架,它完全由Java写成,并设计用于J2SE和J2EE应用中。它提供了巨大的灵 活性而不牺牲简单性。你能够用它来为执行一个作业而创建简单的或复杂的调度。它有很多特征,如:数据库支持,集群,插件,EJB作业预构 建,JavaMail及其它,支持cron-like表达式等等。Quartz框架是一个全功能、开源的任务调度服务,可以集成几乎任何的java应用程序—从小的单片机系统...
7年前 (2017-09-09)
阅读(4200)
赞一个 (2)
链接直达