quartz定時器

openkk 13年前發布 | 2K 次閱讀 Vaadin
import java.text.ParseException;
import org.quartz.CronTrigger;
import org.quartz.JobDetail;
import org.quartz.Scheduler;
import org.quartz.SchedulerException;
import org.quartz.SchedulerFactory;
import org.quartz.impl.StdSchedulerFactory;
/***
 *
 * @author 劉毅
 * @date 2010-1-23
 * @param 定時器簡單封裝(待運行的類需實現job)
 */
public class QuartzMethod {

 public  SchedulerFactory sf = new StdSchedulerFactory();

 public Scheduler sched;

 public JobDetail job;

 public CronTrigger cron;
 /**
  * 設置定時器信息(工作名,組名,類名)
  * */
 public  void setQuartzInfo(String taskName,String taskGroup,Object obj){

  try {
   sched = sf.getScheduler();
   job = new JobDetail(taskName,taskGroup,(Class<?>) obj);
  } catch (SchedulerException e) {
   e.printStackTrace();
  }
 }
 /**
  * 工作名,組名,時間
  * */
 public  void setCronTrigger(String triggerName,String taskGroup,String setTime){

   try {
    cron = new CronTrigger(triggerName,triggerName,setTime);
   } catch (ParseException e) {
    e.printStackTrace();
   }
 }
 /**
  * 設置休眠時間
  * */
 public void setSleep(long setSleepTime){
  try {
   Thread.sleep(setSleepTime);
  } catch (InterruptedException e) {
   e.printStackTrace();
  }
 }
 /**
  * 運行定時器
  * */
  public void run(){
   try {
   sched.scheduleJob(job, cron);
   sched.start();
  } catch (SchedulerException e) {
   e.printStackTrace();
  }
  }

}

public static void main(String[] args) {
  QuartzMethod qm = new QuartzMethod();
  qm.setQuartzInfo("job", "groutp",SimpleJob.class);
  qm.setCronTrigger("job1","groutp","*/2 * * * * ?");
  qm.run();
}
 本文由用戶 openkk 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!