Quartz概述
1.说明
- Quartz是一个完全由Java编写的开源的作业任务调度框架。
- Quartz框架的核心是调度器(Scheduler)。定时任务以作业(Job)的概念进行存储,调度器通过触发器(Trigger)来调用作业任务。
- Quartz提供了调度运行环境的持久化机制,作业故障后可恢复任务调度数据。
- Quartz支持Cron-Like表达式,触发器触发任务可在任何指定时间执行。
- Quartz还提供了集群、组件的监听器、支持各种插件、线程池管理、RMI远程调度、JTA事务等功能。
2.体系结构
备注:
- Calendar:一些日历特定时间点的集合(可看作java.util.Calendar的集合)
- ThreadPool:Scheduler使用一个线程池作为任务运行的基础设施,任务通过共享线程池中的线程提高运行效率
- SchedulerContext : 类似于ServletContext,保存着Scheduler上下文信息,Job和Trigger都可以访问SchedulerContext内的信息
- JobDataMap:保存着任务实例的对象,并保持着他们状态信息,它是Map接口的实现,即你可以往里面put和get一些你想存储和获取的信息
官网地址:http://www.quartz-scheduler.org/
包结构
先入为主-Quartz简单例子
备注:
- 基本实现步骤:
- 创建调度工厂();
- 根据工厂取得调度器实例();
- Builder模式构建子组件<Job,Trigger>
- 通过调度器组装子组件
- 调度器.start();
- Quartz例子中的核心:
- 需要执行的作业任务Job/JobDetail </