写点什么

quartz-2,linux 视频教程百度云

用户头像
极客good
关注
发布于: 刚刚

为了使用 quartz,一个基本的 quartz.properties 配置文件如下所示:


org.quartz.scheduler.instanceName = MyScheduler


org.quartz.threadPool.threadCount = 3


org.quartz.jobStore.class = org.quartz.simpl.RAMJobStore


上述配置的 scheduler 有如下特点:


  • org.quartz.scheduler.instanceName - scheduler 的名称为“MyScheduler”

  • org.quartz.threadPool.threadCount - 线程池中有 3 个线程,即最多可以同时执行 3 个 job;

  • org.quartz.jobStore.class -


quartz 的所有数据,包括 job 和 trigger 的配置,都会存储在内存中(而不是数据库里)。如果你想使用 quartz 的数据库存储功能,我们建议在使用数据库存储之前,先使用内存存储(RamJobStore)。

示例应用

下载和安装完 quartz 后,是时候开发一个示例应用,并让它跑起来了。下面的示例代码,获取 scheduler 实例对象,启动,然后关闭。


QuartzTest.java


import org.quartz.Scheduler;


import org.quartz.SchedulerException;


import org.quartz.impl.StdSchedulerFactory;


import static org.quartz.JobBuilder.*;


import static org.quartz.TriggerBuilder.*;


import static org.quartz.SimpleScheduleBuilder.*;


public class QuartzTest {


public static void main(String[] args) {


try {


// Grab the Scheduler instance from the Factory


Scheduler scheduler = StdSchedulerFactory.getDefaultScheduler();


// and start it off


scheduler.start();


scheduler.shutdown();


} catch (SchedulerException se) {


se.printStackTrace();


}


}


}


当你调用 StdSchedulerFactory.getDefaultScheduler()获取 scheduler 实例对象后,在调用 scheduler.shutdown()之前,scheduler 不会终止,因为还有活跃的线程在执行。


注意示例代码中的静态导入(static import),下面的代码中也会用到它们。


如果你没有配置日志输出,所有的日志会输出到控制台,比如:


[INFO] 21 Jan 08:46:27.857 AM main [org.quartz.core.QuartzScheduler]


Quartz Scheduler v.2.0.0-SNAPSHOT created.


[INFO] 21 Jan 08:46:27.859 AM main [org.quartz.simpl.RAMJobStore]


RAMJobStore initialized.


[INFO] 21 Jan 08:46:27.865 AM main [org.quartz.core.QuartzScheduler]


Sch


【一线大厂Java面试题解析+核心总结学习笔记+最新架构讲解视频+实战项目源码讲义】
浏览器打开:qq.cn.hn/FTf 免费领取
复制代码


eduler meta-data: Quartz Scheduler (v2.0.0) 'Scheduler' with instanceId 'NON_CLUSTERED'


Scheduler class: 'org.quartz.core.QuartzScheduler' - running locally.


NOT STARTED.


Currently in standby mode.


Number of jobs executed: 0


Using thread pool 'org.quartz.simpl.SimpleThreadPool' - with 50 threads.


Using job-store 'org.quartz.simpl.RAMJobStore' - which does not support persistence. and is not clustered.


[INFO] 21 Jan 08:46:27.865 AM main [org.quartz.impl.StdSchedulerFactory]


Quartz scheduler 'Scheduler' initialized from default resource file in Quartz package: 'quartz.properties'


[INFO] 21 Jan 08:46:27.866 AM main [org.quartz.impl.StdSchedulerFactory]


Quartz scheduler version: 2.0.0


[INFO] 21 Jan 08:46:27.866 AM main [org.quartz.core.QuartzScheduler]


Scheduler Scheduler_$_NON_CLUSTERED started.


[INFO] 21 Jan 08:46:27.866 AM main [org.quartz.core.QuartzScheduler]


Scheduler Scheduler_$_NON_CLUSTERED shutting down.


[INFO] 21 Jan 08:46:27.866 AM main [org.quartz.core.QuartzScheduler]


Scheduler Scheduler_$_NON_CLUSTERED paused.


[INFO] 21 Jan 08:46:27.867 AM main [org.quartz.core.QuartzScheduler]


Scheduler Scheduler_$_NON_CLUSTERED shutdown complete.

用户头像

极客good

关注

还未添加个人签名 2021.03.18 加入

还未添加个人简介

评论

发布
暂无评论
quartz-2,linux视频教程百度云