首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 开源软件 >

quartz定时部署使用感想

2012-09-16 
quartz定时调度使用感想在每月最后一天对这个月的所有数据统计过程中,发现用timer有很明显的问题,因为间隔

quartz定时调度使用感想
在每月最后一天对这个月的所有数据统计过程中,发现用timer有很明显的问题,因为间隔时间随着月份的不同而不一致。后来在网上认识了quartz定时调度。

没有用网上大多数人用的spring结合quartz。而是单纯的通过tomcat自动启动servlet,调用quartz服务。

最初的时候到官网下载quartz2.1.6包,按照网上的例子试验才发现一个问题,部分代码如下,

 public void init() throws ServletException {      try {       //①创建一个JobDetail实例,指定SimpleJob       JobDetail jobDetail = new JobDetail("job1_1","jGroup1", PreOperationJob.class);       //②通过SimpleTrigger定义调度规则:马上启动,每2秒运行一次,共运行100次       CronTrigger cronTrigger=new CronTrigger("trigger1_1","tgroup1");       String cronExpresion=this.getInitParameter("cronExpresion");       cronTrigger.setCronExpression(cronExpresion);       //③通过SchedulerFactory获取一个调度器实例       SchedulerFactory schedulerFactory = new StdSchedulerFactory();       Scheduler scheduler = schedulerFactory.getScheduler();       scheduler.scheduleJob(jobDetail, cronTrigger);//④ 注册并进行调度       scheduler.start();//⑤调度启动       } catch (Exception e) {       e.printStackTrace();       }     }


应用这个例子,才发现有个问题,不能实例化JobDetail这个类,
JobDetail jobDetail = new JobDetail("job1_1","jGroup1", PreOperationJob.class);

后来找原因,打开quartz2.1.6的源码,才发现JobDetail没提供该构造方法。最后下载quartz1.8.6,打开源码发现这个里面的JobDetail这个类提供了该构造方法,后果断用换quartz1.8.6.解决成功。

热点排行