Quartz是个开源的作业调度框架,为在Java应用程序中进行作业调度提供了简单却强大的机制.Quartz框架包含了调度器监听,作业和触发器监听。你可以配置作业和触发器监听为全局监听或者是特定于作业和触发器的监听.Quartz允许开发人员根据时间间隔(或天)来调度作业。
![]()
它实现了作业和触发器的多对多关系,还能把多个作业与不同的触发器关联。整合了Quartz的应用程序可以重用来自不同事件的作业,还可以作为一个事件组合多个作业。并且还能和Spring配置整合使用.Quartz在功能上远远超越了JDK自带的Timer,很好很强大好啦,直接上代码!
以上就是石英任务调度对于任务的常用操作,封装起来以便在外部调用这样我们就需要任务的执行了!
- 包 com.joyce.quartz;
-
- import java.text.SimpleDateFormat;
- import java.util.Date;
-
- 进口 org.quartz.Job;
- import org.quartz.JobExecutionContext;
- import org.quartz.JobExecutionException;
-
- 公共类 QuartzJob 实现 作业{
-
- @覆盖
- public void execute(JobExecutionContext arg0) throws JobExecutionException {
- System.out.println(new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss” ).format(new Date())+ “” );
- }
- }
好吧,我们来测试一下:
- 包 com.joyce.quartz.main;
-
- import com.joyce.quartz.QuartzJob;
- import com.joyce.quartz.QuartzManager;
-
- 公共类 QuartzTest {
- public static void main(String [] args){
- 尝试 {
- String job_name = “动态任务调度” ;
- System.out.println(“【系统启动】开始(每1秒输出一次)...” );
- QuartzManager.addJob(JOB_NAME,QuartzJob 类, “0/1 * * * *?” );
-
- Thread.sleep(5000 );
- System.out.println(“【修改时间】开始(每2秒输出一次)...” );
- QuartzManager.modifyJobTime(job_name, “10/2 * * * *?” );
- Thread.sleep(6000 );
- System.out.println(“【移除定时】开始...” );
- QuartzManager.removeJob(JOB_NAME);
- System.out.println(“【移除定时】成功” );
-
- System.out.println(“【再次添加定时任务】开始(每10秒输出一次)...” );
- QuartzManager.addJob(JOB_NAME,QuartzJob 类, “* / 10 * * * *?” );
- Thread.sleep(60000 );
- System.out.println(“【移除定时】开始...” );
- QuartzManager.removeJob(JOB_NAME);
- System.out.println(“【移除定时】成功” );
- } 捕获 (例外五){
- e.printStackTrace();
- }
- }
- }
原文地址http://www.bieryun.com/850.html