quartz学习1

(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");

猜你喜欢

转载自zxymicky.iteye.com/blog/1217968