我正在使用 Spring 将 Quartz 调度程序(使用 Spring 的 TaskScheduler 接口(interface)抽象出来)注入(inject)到我的应用程序中,该程序会在启动时加载从数据库配置的作业。
它将每个作业添加到调度程序中,如下所示:
TaskScheduler taskScheduler = ...;//injected
Runnable runableThing = ...;
String cronExpression = ...; //from DB
taskScheduler.schedule(runableThing, new CronTrigger(cronExpression));
我的问题是:是否可以指定诸如 job_id 之类的内容,随后可用于取消作业/触发器 - 例如响应用户在 Web 界面中选择要取消的作业?
我查看了 Spring 文档,但没有找到方法。
感谢您的任何想法。
最佳答案
取消调度作业的特定触发器
scheduler.unscheduleJob(triggerName, triggerGroup);
删除作业并取消调度其所有触发器
scheduler.deleteJob(jobName, jobGroup);
引用:http://www.opensymphony.com/quartz/wikidocs/UnscheduleJob.html
关于java - 如何在 Spring 中取消预定的 Quartz 作业,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4269754/