Quartz入门教程

Quartz是很有名气的任务调度框架,具有简单,易用的特点,借助于cron表达式,可进行负责的任务调度工作。这里是一个入门级的教程:

看代码:

Java代码 复制代码 收藏代码
  1. package com.yjck.quartz; 
  2.  
  3. import java.util.Date; 
  4.  
  5. import org.quartz.Job; 
  6. import org.quartz.JobExecutionContext; 
  7. import org.quartz.JobExecutionException; 
  8.  
  9. public class MyJobClassimplements Job{ 
  10.     /*事件类,处理具体的业务*/ 
  11.     public void execute(JobExecutionContext job)throws JobExecutionException { 
  12.         System.out.println("hello quartz"+new Date()); 
  13.          
  14.     } 
  15.  
package com.yjck.quartz;

import java.util.Date;

import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;

public class MyJobClass implements Job{
	/*事件类,处理具体的业务*/
	public void execute(JobExecutionContext job) throws JobExecutionException {
		System.out.println("hello quartz"+ new Date());
		
	}

}

调用类:

Java代码 复制代码 收藏代码
  1. package com.yjck.quartz; 
  2. import org.quartz.JobDetail; 
  3. import org.quartz.Scheduler; 
  4. import org.quartz.SchedulerException; 
  5. import org.quartz.SimpleTrigger; 
  6. import org.quartz.Trigger; 
  7. import org.quartz.TriggerUtils; 
  8. import org.quartz.impl.StdSchedulerFactory; 
  9.  
  10.  
  11. public class QuartzTest { 
  12.   public staticvoid main(String[] args) throws InterruptedException{ 
  13.       QuartzTest tqz = new QuartzTest(); 
  14.     try
  15.       tqz.startShedule(); 
  16.     } catch (SchedulerException e) { 
  17.      e.printStackTrace(); 
  18.     } 
  19.   } 
  20.  
  21.   protected void startShedule()throws SchedulerException{ 
  22.      /*调度器*/ 
  23.     Scheduler scheduler = StdSchedulerFactory.getDefaultScheduler(); 
  24.     /*具体执行类*/ 
  25.     JobDetail jobDetail = new JobDetail("firstJOB", scheduler.DEFAULT_GROUP, MyJobClass.class); 
  26.     //触发器,定义每3秒执行一次 
  27.     //Trigger trigger = TriggerUtils.makeSecondlyTrigger(3); 
  28.     /*简单触发器,相当于java timetask,CronTrigger 是更为发展的触发器,有cron表达式*/     
  29.     SimpleTrigger trigger = new SimpleTrigger("triger1", scheduler.DEFAULT_GROUP,10, 2000); 
  30.     scheduler.scheduleJob(jobDetail, trigger); 
  31.     scheduler.start(); 
  32.  
  33.  
  34.   } 
package com.yjck.quartz;
import org.quartz.JobDetail;
import org.quartz.Scheduler;
import org.quartz.SchedulerException;
import org.quartz.SimpleTrigger;
import org.quartz.Trigger;
import org.quartz.TriggerUtils;
import org.quartz.impl.StdSchedulerFactory;


public class QuartzTest {
  public static void main(String[] args) throws InterruptedException{
	  QuartzTest tqz = new QuartzTest();
    try {
      tqz.startShedule();
    } catch (SchedulerException e) {
     e.printStackTrace();
    }
  }

  protected void startShedule() throws SchedulerException{
	 /*调度器*/
    Scheduler scheduler = StdSchedulerFactory.getDefaultScheduler();
    /*具体执行类*/
    JobDetail jobDetail = new JobDetail("firstJOB", scheduler.DEFAULT_GROUP, MyJobClass.class);
    //触发器,定义每3秒执行一次
    //Trigger trigger = TriggerUtils.makeSecondlyTrigger(3);
    /*简单触发器,相当于java timetask,CronTrigger 是更为发展的触发器,有cron表达式*/    
    SimpleTrigger trigger = new SimpleTrigger("triger1", scheduler.DEFAULT_GROUP, 10, 2000);
    scheduler.scheduleJob(jobDetail, trigger);
    scheduler.start();


  }
}

Ok,就是这么简单,至于有人看到quartz的配置文件,在本身的jar文件里就有,你可以重写,但是要放到类路径下。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值