以下是一个简单的 Java 程序,用于查询 Quartz 中的 Job 列表:

import org.quartz.JobDetail;
import org.quartz.Scheduler;
import org.quartz.SchedulerException;
import org.quartz.impl.StdSchedulerFactory;
import java.util.List;

public class QuartzJobList {

    public static void main(String[] args) throws SchedulerException {
        Scheduler scheduler = new StdSchedulerFactory().getScheduler();
        List<JobDetail> jobList = scheduler.getJobGroupNames().stream()
                .flatMap(jobGroupName -> {
                    try {
                        return scheduler.getJobKeys(org.quartz.impl.matchers.GroupMatcher.jobGroupEquals(jobGroupName)).stream();
                    } catch (SchedulerException e) {
                        e.printStackTrace();
                        return null;
                    }
                })
                .map(jobKey -> {
                    try {
                        return scheduler.getJobDetail(jobKey);
                    } catch (SchedulerException e) {
                        e.printStackTrace();
                        return null;
                    }
                })
                .toList();
        System.out.println('Job List:');
        for (JobDetail jobDetail : jobList) {
            System.out.println(jobDetail.getKey());
        }
    }

}

该程序使用 Quartz 的 API,获取所有的 Job Group 名称,然后遍历每个 Group 中的 Job Key,最后获取 Job Detail 并将其存储在列表中。最终,程序将打印出 Job 列表中的所有 Job Key。

Java 代码示例:查询 Quartz 中的 Job 列表

原文地址: https://www.cveoy.top/t/topic/loGs 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录