Scheduler的创建方式
所有的Scheduler实例应该由SchedulerFactory来创建,SchedulerFactory有两种:
- StdSchedulerFactory创建
SchedulerFactory sFactory=new StdSchedulerFactory();
Scheduler scheduler=sFactory.getScheduler();
- DirectSchedulerFactory创建
DirectSchedulerFactory factory=DirectSchedulerFactory.getInstance();
Scheduler scheduler=factory.getScheduler();
由于DirectSchedulerFactory的配置是由代码编写配置,而StdSchedulerFactory的配置是由配置文件配置,所有大多使用StdSchedulerFactory创建Scheduler。
StdSchedulerFactory详解:
- 使用一组参数(Java.util.Properties)来创建和初始化Quartz调度器
- 配置参数一般存储在quartz.properties中
- 调用getScheduler方法就能创建和初始化调度器对象
Scheduler的主要函数
- Date schedulerJob(JobDetail jobDetail,Trigger trigger) 该方法的返回值是:指定的Scheduler近期就要触发的时间
- void strat() 启动Scheduler
- void standby() 将该Scheduler暂停
- void shutdown() 将该Scheduler关闭,并且不能被重启。该方法可以有两个参数,如果为 shutdown(true) ,表示等待所有正在执行的Job执行完毕之后,再关闭scheduler;如果为 shutdown(false) ,默认不填也是这样,表示直接关闭scheduler