Quartz框架是用于定时执行任务的框架。
需要引入的包为quartz-all-1.5.2.jar
首先是写一个Job类,类似于
public class RouterLogSche implements Job{
private final static Logger logger = Logger.getLogger(RouterLogSche.class);
@Override
public void execute(JobExecutionContext arg0) throws JobExecutionException {
// TODO Auto-generated method stub
logger.info("RouterLogScheduler执行定时任务");
System.out.println("执行任务iiiiiiiiiiii");
}
}
然后是书写调度类,调度类的对象用于调度这个Job类。
形如:
public class InventedNumService {
public final static Logger logger = Logger.getLogger(InventedNumService.class);
private static InventedNumService ins = null;
public InventedNumService getInstance(){
if(ins == null)
ins = new InventedNumService();
return ins;
}
public static void setUpInventedNum() throws Exception{
logger.info("测试已经开始...");
SchedulerFactory sche_fac = new StdSchedulerFactory();
try{
Scheduler sche = sche_fac.getScheduler();
JobDetail jobDetail = new JobDetail("jobDetail","jobDetailGroup",InventedNumSche.class);
CronTrigger cronTrigger = new CronTrigger("cronTrigger","triggerGroup");
CronExpression cexp = new CronExpression("0 0/5 * ? * *");
cronTrigger.setCronExpression(cexp);
sche.scheduleJob(jobDetail,cronTrigger);
sche.start();
}catch(SchedulerException e){
e.printStackTrace();
}catch(ParserException e){
e.printStackTrace();
}
}
}
CronExpression是时间表达式。