gpt4 book ai didi

java - 使用 Quartz 或任何其他 java api 进行动态作业调度

转载 作者:行者123 更新时间:2023-12-02 10:52:02 24 4
gpt4 key购买 nike

我有一个 UI 界面,用户可以在其中定义作业名称、间隔、 Activity/非 Activity 等。

我们如何使用 Quartz Scheduler 或任何 java/Spring api 来实现这一点?

例如。假设任何 Quartz 作业已启动并且间隔设置为 10 分钟,因此在理想情况下作业将在接下来的 10 分钟间隔内运行。但每次作业运行时,我们都希望从数据库中获取最新的时间间隔并对其进行调度。

10:00 作业运行并且在数据库中间隔设置为 10 分钟10:10 作业运行并在数据库中将间隔设置为 20 分钟

所以下次作业应该在 10:30 运行

最佳答案

如果你使用Quartz,你可以实现自定义Trigger 。您的实现将在数据库中查找值,并在下次运行发生在 getFireTimeAfter 中时返回。

另一个选择是使用 Spring Scheduling API 并实现 Trigger界面。同样,nextExecutionTime 方法将决定下次运行何时发生。

使用自定义实现的优点是您可以完全控制触发逻辑(就像您的情况一样,在数据库中进行查找并动态设置下一次运行时间)。

关于java - 使用 Quartz 或任何其他 java api 进行动态作业调度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52099431/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com