QuartzServlet
public class QuartzServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
public void init() throws ServletException {
try{
startScheduler();
}catch (SchedulerException ex){
ex.printStackTrace();
}
}
protected void startScheduler() throws SchedulerException {
long ctime = System.currentTimeMillis();
//使用工厂创建调度器实例
Scheduler scheduler = StdSchedulerFactory.getDefaultScheduler();
//以作业创建JobDetail实例
JobDetail jobDetail = new JobDetail("dd", Scheduler.DEFAULT_GROUP,QuartzJob.class);
//创建trigger
//Trigger trigger = new SimpleTrigger("dd",Scheduler.DEFAULT_GROUP,5000,200) ;
//start
SimpleTrigger trigger =new SimpleTrigger("simpleTrigger","triggerGroup-s1");
trigger.setStartTime(new Date(ctime));
// set the interval, how often the job should run (10 seconds here)
trigger.setRepeatInterval(20000);
// set the number of execution of this job, set to 10 times.
// It will run 10 time and exhaust.
trigger.setRepeatCount(2);
//end
//调度器将作业与trigger关联起来
scheduler.scheduleJob(jobDetail, trigger);
//开始调度
scheduler.start();
/*try {
Scheduler scheduler = null;
scheduler = StdSchedulerFactory.getDefaultScheduler();
jobDetail(scheduler, "Jobhouse", scheduler.DEFAULT_GROUP,"triger1", Scheduler.DEFAULT_GROUP,
QuartzJob.class,"0 0 0 * * ?");//每天凌晨0点执行
scheduler.start();
} catch (Exception ex) {
ex.printStackTrace();
} */
}
private static void jobDetail(Scheduler scheduler, String jobName,
String jobgroup,
String trigerName,
String trigerGroup, Class jobClass,
String triggerTime) {
try {
//任务实体
JobDetail jobDetail = new JobDetail(jobName, jobgroup, jobClass);
//任务触发器
Trigger trigger = new CronTrigger(trigerName, trigerGroup,triggerTime);
//将任务添加到调度器
scheduler.scheduleJob(jobDetail, trigger);
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
QuartzJob
public class QuartzJob implements Job{
public void execute(JobExecutionContext context) throws JobExecutionException{
QuartzInfo info=new QuartzInfo();
ArrayList list=info.getGenreID();
System.out.println(new Date() +" 作业调度开始。");
for(int i=0;i<list.size();i++){
ArrayList genre=info.getGenre((String)list.get(i));
ArrayList pro=info.getPro((String)list.get(i));
Feed feed=new Feed();
feed.transferFunds(genre, pro,(String)list.get(i));
}
System.out.println(new Date() +" 作业调度结束。");
}
}