当前位置: 首页 > 知识库问答 >
问题:

使用AdoJobStore自动处理Quartz.NET中的作业和触发器更改

幸鸿轩
2023-03-14

我正在使用AdoJobStore编写一个Quartz.NET应用程序,以允许自动调度报表。

是否有一种方法可以让quartz调度器自动开始调度在调度器上次启动后添加到数据库中的新作业和触发器,或者我是否需要编写一个定期检查数据库更改的例程,如果发现,则重新启动quartz调度器实例?

共有1个答案

连德义
2023-03-14

您可以直接使用Quartz.NET来处理所有这些问题。这里有一种方法:

  1. 将Quartz.NET服务器设置为windows服务。发行版附带了Windows服务实现,也可以构建自己的服务实现。在quartz服务器上启用远程处理。
  2. 从用户将配置其报表和计划的应用程序中,使用Quartz.NET库连接到Quartz.NET服务器,并根据需要直接计划作业和触发器。
  3. 您可能希望将用户的报表配置存储在其他地方,以防用户稍后查看或更改/复制。将这些数据存储在Quartz.NET以外的其他地方。如果用户更改了存储的报表配置,请再次连接到Quartz.NET服务器,并使用Quartz.NET库更新/重新安排作业。或者,您可以创建一个作业,该作业在Quartz.NET服务器上运行,并定期检查报表配置是否有任何更改。
  4. 您必须创建能够以足够通用的方式生成报表的实际作业,以便通过JobDataMap向job传递数据来生成任何报表,而不必为每个报表创建作业。
 类似资料:
  • 我正在使用Quartz.NET开发简单的调度程序。我想Quartz在数据库中保存所有的作业和触发器,所以我设置了AdoJobStore和“普通”作业,它工作正常。 我调试了JobFactory,根本没有调用方法NewJob。事情在它之前就发生了。 有人能帮忙吗?

  • 问题内容: 如何设置Jenkins作业以触发在变量/参数中动态定义的作业? 我的问题的伪代码: 生成操作“触发/调用在其他项目上生成”以及生成后操作“参数化触发器插件”和“生成其他项目”不允许在参数中定义作业名称。 我似乎没有将GroovyAxis插件与Build多重配置项目一起使用。常规代码似乎不在作业构建环境中运行,而是在作业配置保存期间运行。 我了解您可以通过脚本通过其build-start

  • 我们使用quartz调度器创建一个带有触发器名称和触发器组的触发器,它将在15分钟的间隔被触发。 我们希望在任何时间点手动触发时间表。因此,我们所做的就是获取与我们创建的计划相关联的作业的触发键细节,并尝试使用以下API触发作业。 用上面提到的API激发作业时(即尝试手动激发作业)的Quartz日志: 能不能有人请让我知道我们如何才能使时间表是触发与原来的工作相关联的触发器。

  • 背景: 我目前正在开发一个应用程序,该应用程序使用Spring Batch读取一组文件并将文件的内容缓存在内存中。缓存的数据然后由划分为不同类的业务逻辑层使用,每个类通过使用缓存中的数据执行特定的业务功能。 要求: 我被分配了对业务逻辑层进行单元测试的任务。由于业务逻辑层假设数据将在缓存中可用,所以在测试业务逻辑类之前,我需要一种在单元测试中触发Spring批处理作业的方法。 问题是: 我正在考虑