java - quartz里关于group的问题
PHP中文网
PHP中文网 2017-04-18 10:26:25
0
1
819

在使用quartz动态添加修改任务时,在新建trigger或者jobdetail时 除了给自己名称外,还有一个参数是groupname,这个参数是用来限制什么的呢?同一个组下的连个jobdetail 和两个组下的jobdetail有什么区别呢?trigger组在什么情况下会用到呢??

我使用的quartz是2.2.3的版本
请大神指教!!!

PHP中文网
PHP中文网

认证高级PHP讲师

répondre à tous(1)
洪涛

La documentation est la suivante :
Les clés des Jobs et des Triggers (JobKey et TriggerKey) permettent de les placer dans des 'groupes' qui peuvent être utiles pour organiser vos jobs et triggers en catégories telles que "reporting jobs" et les tâches de « maintenance ». La partie nom de la clé d'une tâche ou d'un déclencheur doit être unique au sein du groupe - ou en d'autres termes, la clé complète (ou identifiant) d'une tâche ou d'un déclencheur est le composé du nom et groupe.
En termes simples, nom+groupe forme une clé unique, grâce à laquelle vous pouvez mettre à jour, arrêter des tâches, etc.
Écrivez une démo simple :

           JobDetail jobDetail=JobBuilder.newJob(SimpleJob.class).withIdentity("myjob", "job-group").build();
           CronTrigger cronTrigger=TriggerBuilder.newTrigger().withIdentity("cronTrigger", "trigger-group").withSchedule(CronScheduleBuilder.cronSchedule("* * * * * ?")).build();  
           SchedulerFactory sFactory=new StdSchedulerFactory();  
           Scheduler scheduler=sFactory.getScheduler();  
           scheduler.scheduleJob(jobDetail, cronTrigger);
           scheduler.start();  
           Thread.sleep(5*1000);//
           JobKey key = JobKey.jobKey("myjob", "job-group");//通过name+group获取唯一的jobKey
           scheduler.pauseJob(key);//暂停任务

Autres applications du groupe :
Vous pouvez obtenir toutes les clés de travail en dessous via le nom du groupe


  GroupMatcher<JobKey> gm = GroupMatcher.groupEquals("job-group");
  Set<JobKey> set = scheduler.getJobKeys(gm);
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal