首先添加所需要的類包:quartz-1.5.2.jar,quartz-all-1.5.2.jar,quartz-jboss-1.5.2.jar
//設置定時作業
public void startScheduler(HttpServletRequest requests)throws SchedulerException{
try{
//建立作業調度器
Scheduler scheduler = StdSchedulerFactory.getDefaultScheduler();
//判斷作業調度內是否有作業,如果有將其刪除
if (!scheduler.isShutdown()) {
scheduler.deleteJob("ReceiveOnTimed", Scheduler.DEFAULT_GROUP);
}
//刪除調度器的作業后,新建一個我們現在要完成的作業,該作業所需要的類是ReceiveJobd.class,作業名字是ReceiveOnTimes,所屬分組是Scheduler.DEFAULT_GROUP
JobDetail jobDetail = new JobDetail("ReceiveOnTimed",
Scheduler.DEFAULT_GROUP,
ReceiveJobd.class);
int m = ips.length;
int n = tablenames.length;
//向作業內設置要傳入的參數
jobDetail.getJobDataMap().put("scheduler", scheduler);
jobDetail.getJobDataMap().put("ipLength", m);
jobDetail.getJobDataMap().put("tablenameLength", n);
jobDetail.getJobDataMap().put("wcx",wc);
for (int i = 0; i < m; i++) {
jobDetail.getJobDataMap().put("ip" + i, ips[i]);
for (int j = 0; j < n; j++) {
jobDetail.getJobDataMap().put("tablename" + j, tablenames[j]);
}
}
//建立觸發器,判斷何時觸發該作業,參數為觸發器的名稱,觸發器分組,作業名稱,作業分組,時間設定
Trigger trigger = new CronTrigger("ReceiverOnTimeTriggerd",
scheduler.DEFAULT_GROUP,
"ReceiveOnTimed",