java - 数据库表中的 Quartz 作业

标签 java mysql spring tomcat quartz-scheduler

我们使用 Quartz 2.1.6 在集群上进行作业调度,并将作业数据存储在 MySQL 数据库 (MySQL 5.1) 的 JDBC 作业存储中。

我们所有的 Quartz 配置(调度程序、作业、触发器)都是在启动时通过 Spring 完成的。我们将数据存储在数据库中以用于集群目的。

问题:我们在 Quartz 配置中添加并删除了几个作业。它们不再在配置中,但它们仍然存在于表中。我们如何摆脱它们?阅读 Quartz 文档,似乎对表格进行手动编辑是一件非常糟糕的事情。

我们似乎没有明确设置 JobDetail.setDurability(true),所以我不确定为什么这些作业和触发器会一直存在,但它们确实存在。

有人知道吗?

最佳答案

是的,除非您非常清楚自己在做什么,否则在数据库中执行此操作并不是最好的主意。因此,尝试以编程方式进行:

ISchedulerFactory factory = new StdSchedulerFactory();
IScheduler schedulder = factory.GetScheduler();

schedulder.DeleteJob(JobName, JobGroup);

关于java - 数据库表中的 Quartz 作业,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16158423/

相关文章:

java - 为什么mybatis marking 错误可能涉及到defaultParameterMap?

mysql - 按日期删除表而不删除系统表的函数/过程

php - 在 PHP 中捕获 mysql_query 函数以创建自定义触发器

java - 在 Spring Boot 中进行 JDBC 身份验证时,是否必须使用默认的 'users' 表?

java - 如何使用规范在mysql查询中使用多个 "OR"条件创建两个 "AND"条件

java - jboss的Maven + Spring架构

java - 使用 EntityManager 验证实体的唯一性

java - 如何使用 Java 更新 JSON 文件中的嵌套 JSON 对象?

php - 获取的 SQL 语句 (PDO) 返回数组索引 0 处的对象

spring - Spring中的@ExceptionHandler