关于春天石英的问题夫妇

时间:2014-02-12 02:13:18

标签: spring quartz-scheduler

我正在考虑在我的spring mvc web应用程序中构建spring quartz。我有几个问题,我无法正确找到答案。

  1. 如果我想使用cron触发器为spring quartz做石英使用java系统时间或操作系统时间执行作业?
  2. 我打算有一个属性文件来保存我的所有cron触发器。如果有人去更改cron触发器以临时执行作业,石英会自动获取文件中的更改吗?或者,如果不是默认行为,我可以告诉quartz如何执行此操作。
  3. 我最近一直在阅读有关Spring批量管理控制台的信息。听起来像是一个很好的gui工具来重新安排工作。它可以用于对crontab触发器进行临时更改吗?或者是否有其他gui工具可以用来管理工作触发器?
  4. 提前致谢

1 个答案:

答案 0 :(得分:1)

石英

  1. Quartz使用使用java系统时间的自定义线程调度程序(org.quartz.core.QuartzScheduler)。它可以将commonj接口集成为JEE(WAS和Weblogic)可互操作。
  2. 重新加载配置:阅读Quartz: How to reload jobs and triggers with org.quartz.plugins.xml.XMLSchedulingDataProcessorPlugin?
  3. Spring批处理管理控制台用于弹簧批处理,是监视批处理活动的打包
  4. 使用API​​重新加载配置

    一般来说,您可以通过编程方式使用quartz API(我使用它们):

        JobDetail job = new JobDetail();
        job.setName("myJob");
        job.setJobClass(MyJob.class);
    
        CronTrigger trigger = new CronTrigger();
        trigger.setName("myTriggerName");
        trigger.setCronExpression("0/30 * * * * ?");
    
    
        Scheduler scheduler = new StdSchedulerFactory().getScheduler();
        scheduler.start();
        scheduler.scheduleJob(job, trigger);
    

    这些API为您提供了良好的控制。

    重新加载配置JMX方式

    您可以通过RemoteMBeanScheduler

    控制Qurtz调度程序
      

    Scheduler接口的一个实现,它通过JMX远程代理对给定QuartzScheduler实例上的等效调用的所有方法调用。