如何在 Spring 中取消预定的 Quartz 作业

发布于 2024-10-04 09:53:50 字数 465 浏览 3 评论 0原文

我使用 Spring 将 Quartz 调度程序(使用 Spring 的 TaskScheduler 接口抽象)注入到我的应用程序中,该程序在启动时加载从数据库配置的作业。

它将每个作业添加到调度程序中,如下所示:

TaskScheduler taskScheduler = ...;//injected    
Runnable runableThing = ...;
String cronExpression = ...; //from DB
taskScheduler.schedule(runableThing, new CronTrigger(cronExpression));

我的问题是:是否可以指定类似 job_id 之类的内容,随后可用于取消作业/触发器 - 例如响应用户选择要取消的作业网络界面?

我查看了 Spring 文档,但没有找到实现此目的的方法。

任何想法都感激不尽。

I'm using Spring to inject a Quartz scheduler (abstracted with Spring's TaskScheduler interface) into my app that loads jobs configured from a database at startup.

It adds each job in the scheduler something like this:

TaskScheduler taskScheduler = ...;//injected    
Runnable runableThing = ...;
String cronExpression = ...; //from DB
taskScheduler.schedule(runableThing, new CronTrigger(cronExpression));

my question is this: Is it possible to specify something like a job_id that can subsequently be used to cancel the job/trigger - say in response to a user selecting the job to be cancelled in the web interface?

I've looked at the Spring docs and can't see a way to do this.

Any ideas gratefully received.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

大海や 2024-10-11 09:53:50

取消调度作业的特定触发器

scheduler.unscheduleJob(triggerName, triggerGroup);

删除作业并取消调度其所有触发器

scheduler.deleteJob(jobName, jobGroup);

参考:http:// www.opensymphony.com/quartz/wikidocs/UnscheduleJob.html

Unscheduling a Particular Trigger of Job

scheduler.unscheduleJob(triggerName, triggerGroup);

Deleting a Job and Unscheduling All of Its Triggers

scheduler.deleteJob(jobName, jobGroup);

Ref: http://www.opensymphony.com/quartz/wikidocs/UnscheduleJob.html

阳光①夏 2024-10-11 09:53:50
ScheduledFuture<V> job = taskSchedule.schedule(runableThing, new CronTrigger(cronExpression))
job.cancel(true); 
ScheduledFuture<V> job = taskSchedule.schedule(runableThing, new CronTrigger(cronExpression))
job.cancel(true); 
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文