(2).quartz用类实现
导入commons-digester.jar
某个action或者类实现Job接口,并实现或重写其execute方法
需要定义写一个trigger类,也可以写成一个方法
注意:关键代码:
//1.通过SchedulerFactory来获取一个调度器
SchedulerFactory schedulerFactory = new StdSchedulerFactory();
Scheduler scheduler = schedulerFactory.getScheduler();
2.设置页面表单内容到JobExecutionContext里面
jobDetail.getJobDataMap().put("monitorName", monitorName);
jobDetail.getJobDataMap().put("mailTo", mailTo);
3.1实例化crontrigger采用cronTrigger
CronTrigger cronTrigger=new CronTrigger("cronTrigger"myModel.getId()"-"+random,Scheduler.DEFAULT_GROUP,monitorTime);
scheduler.scheduleJob(jobDetail, cronTrigger);
3.2或者
//采用simpleTrigger
SimpleTrigger simpleTrigger =
new SimpleTrigger("simpleTrigger", "triggerGroup-s1");
//设置作业启动时间
long ctime = System.currentTimeMillis();
simpleTrigger.setStartTime(new Date(ctime));
//设置作业执行间隔
simpleTrigger.setRepeatInterval(100000);
//设置作业执行次数
simpleTrigger.setRepeatCount(3);
//设置作业执行优先级默认为5
//simpleTrigger.setPriority(10);
//作业和触发器设置到调度器中
scheduler.scheduleJob(jobDetail, simpleTrigger);
4.//启动调度器
scheduler.start();
在execute方法里面获取放入的内容
String monitorName = (String)arg0.getJobDetail().getJobDataMap().get("monitorName");
String type = (String)arg0.getJobDetail().getJobDataMap().get("type");
String[] mailTo=(String[])arg0.getJobDetail().getJobDataMap().get("mailTo");
导入commons-digester.jar
某个action或者类实现Job接口,并实现或重写其execute方法
需要定义写一个trigger类,也可以写成一个方法
注意:关键代码:
//1.通过SchedulerFactory来获取一个调度器
SchedulerFactory schedulerFactory = new StdSchedulerFactory();
Scheduler scheduler = schedulerFactory.getScheduler();
2.设置页面表单内容到JobExecutionContext里面
jobDetail.getJobDataMap().put("monitorName", monitorName);
jobDetail.getJobDataMap().put("mailTo", mailTo);
3.1实例化crontrigger采用cronTrigger
CronTrigger cronTrigger=new CronTrigger("cronTrigger"myModel.getId()"-"+random,Scheduler.DEFAULT_GROUP,monitorTime);
scheduler.scheduleJob(jobDetail, cronTrigger);
3.2或者
//采用simpleTrigger
SimpleTrigger simpleTrigger =
new SimpleTrigger("simpleTrigger", "triggerGroup-s1");
//设置作业启动时间
long ctime = System.currentTimeMillis();
simpleTrigger.setStartTime(new Date(ctime));
//设置作业执行间隔
simpleTrigger.setRepeatInterval(100000);
//设置作业执行次数
simpleTrigger.setRepeatCount(3);
//设置作业执行优先级默认为5
//simpleTrigger.setPriority(10);
//作业和触发器设置到调度器中
scheduler.scheduleJob(jobDetail, simpleTrigger);
4.//启动调度器
scheduler.start();
在execute方法里面获取放入的内容
String monitorName = (String)arg0.getJobDetail().getJobDataMap().get("monitorName");
String type = (String)arg0.getJobDetail().getJobDataMap().get("type");
String[] mailTo=(String[])arg0.getJobDetail().getJobDataMap().get("mailTo");