如何获取给定作业名称和组名称的 cron 表达式?

发布于 2024-09-18 05:32:31 字数 587 浏览 16 评论 0 原文

我正在使用 Quartz Scheduler v.1.8.0。

如何获取分配/附加到作业并使用 CronTrigger?在本例中,我有工作名称和组名称。尽管许多触发器可以指向同一个作业,但在我的例子中它只有一个。

Scheduler 类中有一个方法, Scheduler.getTriggersOfJob(jobName, groupName),但它仅返回 Trigger 数组。

cron表达式示例:0 /5 10-20 * * ?

注意:CronTrigger扩展Trigger

I'm using Quartz Scheduler v.1.8.0.

How do I get the cron expression which was assigned/attached to a Job and scheduled using CronTrigger? I have the job name and group name in this case. Though many Triggers can point to the same Job, in my case it is only one.

There is a method available in Scheduler class, Scheduler.getTriggersOfJob(jobName, groupName), but it returns only Trigger array.

Example cronexpression: 0 /5 10-20 * * ?

NOTE: Class CronTrigger extends Trigger

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

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

发布评论

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

评论(1

凌乱心跳 2024-09-25 05:32:31

您可以使用 Scheduler.getTriggerOfJob。此类返回 Trigger[] 中给定 jobName 和 groupName 的所有触发器。

然后,分析该数组的内容,测试 Trigger 是否为 CronTrigger,并将其强制转换以获取 CronTrigger 实例。然后, getCronExpression() 方法应该返回您正在寻找的内容。

这是一个代码示例:

Trigger[] triggers = // ... (getTriggersOfJob)
for (Trigger trigger : triggers) {
    if (trigger instanceof CronTrigger) {
        CronTrigger cronTrigger = (CronTrigger) trigger;
        String cronExpr = cronTrigger.getCronExpression();
    }
}

You can use Scheduler.getTriggerOfJob. This class returns all triggers for a given jobName and groupName, in a Trigger[].

Then, analyse the content of this array, test if the Trigger is a CronTrigger, and cast it to get the CronTrigger instance. Then, the getCronExpression() method should return what you are looking for.

Here is a code sample:

Trigger[] triggers = // ... (getTriggersOfJob)
for (Trigger trigger : triggers) {
    if (trigger instanceof CronTrigger) {
        CronTrigger cronTrigger = (CronTrigger) trigger;
        String cronExpr = cronTrigger.getCronExpression();
    }
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文