站长百科 | 数字化技能提升教程 数字化时代生存宝典
首页
数字化百科
电子书
建站程序
开发
服务器
办公软件
开发教程
服务器教程
软件使用教程
运营教程
热门电子书
WordPress教程
宝塔面板教程
CSS教程
Shopify教程
导航
程序频道
推广频道
网赚频道
人物频道
网站程序
网页制作
云计算
服务器
CMS
论坛
网店
虚拟主机
cPanel
网址导航
WIKI使用导航
WIKI首页
最新资讯
网站程序
站长人物
页面分类
使用帮助
编辑测试
创建条目
网站地图
站长百科导航
站长百科
主机侦探
IDCtalk云说
跨境电商导航
WordPress啦
站长专题
网站推广
网站程序
网站赚钱
虚拟主机
cPanel
网址导航专题
云计算
微博营销
虚拟主机管理系统
开放平台
WIKI程序与应用
美国十大主机
编辑“
Quartz
”
人物百科
|
营销百科
|
网赚百科
|
站长工具
|
网站程序
|
域名主机
|
互联网公司
|
分类索引
跳转至:
导航
、
搜索
警告:
您没有登录。如果您做出任意编辑,您的IP地址将会公开可见。如果您
登录
或
创建
一个账户,您的编辑将归属于您的用户名,且将享受其他好处。
反垃圾检查。
不要
加入这个!
[[Image:QuartzEJS.jpg|right|thumb|Quartz]] '''Quartz'''是一个任务日程管理系统. ==源码概况== 授权协议:免费软件 运行环境:JAVA 官方网站:http://www.quartz-scheduler.org/ 源码下载:[http://www.quartz-scheduler.org/download/download-catalog.html 官方下载] ==概述== Quartz是OpenSymphony开源组织在Job scheduling领域又一开源项目,它可以与[[J2EE]]与[[J2SE]][[应用程序]]相结合使用也可以单独使用。Quartz可以用来创建简单或为运行十个,百个,甚至是好几万个Jobs这样复杂的日程序表。Jobs可以做成标准的[[JAVA]]组件或Ejbs. 从[[软件]]的角度来看,Quartz用一个小Java库发布文件(.jar文件),这个库文件包含了所有Quartz核心功能。这些功能的主要接口([[API]])是Scheduler接口。它提供了简单的操作,例如:将任务纳入日程或者从日程中取消,开始/停止/暂停日程进度。 如果你想将软件组件的执行纳入到日程中,它们只需简单地实现Job接口,这个接口有一个execute()方法。如果希望在日程安排的时间到达时通知组件,那么这些组件应实现TriggerListener或者JobListener接口。 Quartz主过程可以在应用中启动或者运行,也可以作为一个独立的应用(带有RMI接口),或者在一个J2EE应用[[服务器]]中运行,并且可作为其实J2EE组件的一种引用资源。 ==特点== *Quartz能嵌入到任何独立的应用中运行。 *Quartz能在应用服务器或者[[Servlet]]容器中实例化,并且能够参与XA事务。 *Quartz能够以独立的方式运行(在它自己的Java虚拟机中),可以通过RMI使用Quartz。 *Quartz可以被实例化为独立程序的集群(有负载均衡和容错能力)。 ==Job Scheduling(任务日程安排)== 任务在给定的触发器(Trigger)触发时执行。触发器可以通过几乎以下所有形式的组合方式进行创建: *在一天中的任意时刻(可以精确到毫秒)。 *一周中特定的一些天。 *一个月中特定的一些天。 *一年中特定的一些天 *不在日历列表中注册的一些天(比如节假日)。 *循环特定的次数。 *循环到特定的时间。 *无限循环。 *按照一定的时间间隔循环。 ==Job Execution(任务执行)== *任务是任何实现简单Job接口的Java 类,这样开发者能够执行任何完成他们工作的任务。 *任务类的实例可以由Quartz实例化,也可以由你的程序框架实例化。 *当触发器被触发时,日程管理器将会通知某个或者多个实现了JobListener 或TriggerListener的对象(监听器可以是简单的Java对象,或者EJBs,或者JMS消息发布器,等等)。这些监听器在任务执行完毕后也会接到通知。 *任务被完成后,他们会返回一个“任务完成码(JobCompletionCode)”,这个“任务完成码”告知日程管理器任务执行的结果是成功还是失败。日程管理器会根据成功或者失败码来采取措施,比如:立即重新执行任务。 ==Job Persistence(任务持久化)== *Quartz设计中包括了一个JobStore接口,这样,实现这个接口的Job类可以以多种机制实现Job的存储。 *通过使用JDBCJobStore,所有的Jobs和Triggers被配置为“non-volatile”(不轻快)的方式。即,通过JDBC存储在关系数据库中。 *通过使用RAMJobStore,所有Jobs和Triggers被存储在RAM。因此,在程序执行中没有被持久化,但这种方式的优点就是不需要外部数据库。 ==Transactions(事务)== *Quartz通过JobStoreCMT(JDBCJobStore的一个子类)可参与JTA事务。 *Quartz可以管理JTA事务(开始或者提交事务)。 ==Clustering(集群)== *Fail-over.(容错) *Load balancing.(负载均衡) ==Listeners & Plug-Ins(监听器及插件)== *应用可以通过实现一个或者多个监听器接口来实现捕捉日程事件,以监视或控制任务/触发器的行为。 *可以通过插件的机制来扩展Quartz的功能。例如:记录任务执行历史的日志,或者从文件中载入任务和触发器的定义。 ==使用教程== *[[Spring使用Quartz配置调度事务]] *[[使用Quartz实现任务调度和调度管理]] ==最新动态== ==相关插件== ==相关条目== *[[Tapestry]] *[[Jetspeed]] *[[Maven]] ==参考来源== *[http://www.open-open.com/open2714.htm 参考来源1] *[http://www.blogjava.net/zhiweili188/archive/2009/10/22/299435.html 参考来源2] *[http://www.ibm.com/developerworks/cn/java/j-quartz 参考来源3] *[http://www.docin.com/p-7369941.html 参考来源4] [[category:JAVA|Q]] [[category:开放源代码|Q]] [[category:Quartz|Q]] [[category:框架|Q]]
摘要:
请注意,您对站长百科的所有贡献都可能被其他贡献者编辑,修改或删除。如果您不希望您的文字被任意修改和再散布,请不要提交。
您同时也要向我们保证您所提交的内容是您自己所作,或得自一个不受版权保护或相似自由的来源(参阅
Wordpress-mediawiki:版权
的细节)。
未经许可,请勿提交受版权保护的作品!
取消
编辑帮助
(在新窗口中打开)