【发布时间】:2019-01-02 10:09:54
【问题描述】:
我正在从事一个有 n 个 maven 工作的春季项目。对于任何工作,我都有一个 cron 表达式。我想在创建新的 cron 作业之前检查作业是否已经在运行。我怎样才能做到这一点?
我拿一份工作给你看一个例子。 在quartz-context.xml 中,我定义了bean,设置了从属性文件中获取值的cron 表达式属性、组属性和作为用于设置作业参数的类的作业详细信息。 这是课程:
public class DataImportJobDetail extends AbstractJobDetail {
@Override
protected JobParameters setupJobParameters(JobParameters jobParameters,
JobExecutionContext context, String jobName) {
JobParametersBuilder builder = new JobParametersBuilder(jobParameters);
builder.addString(ConfigManager.PARAM_MODE, ConfigManager.MODE_PERSIST);
return builder.toJobParameters();
}
}
我想我必须在这里创建一个控件,通过获取当前正在执行的作业列表并将其与jobName 进行比较?
【问题讨论】:
-
这是另一个类似问题的链接,但在这里他们使用了单例模式,但我不明白我必须在哪里使用它。
标签: java maven triggers cron quartz