【IT168 资讯】Quartz 2.0 发布了,Quartz 是一个 Java 轻量级开源企业级的作业调度框架,来自 Quartz 开发团队的信息,这是 Quartz 有史以来最大的、最值得兴奋的一个版本。
该版本除了在性能上有所提升外,增加了如下新特性:
• Scheduler.clear() 提供方便用于清除所有任务、触发器和日程的方法
• Scheduler.scheduleJobs(Map> triggersAndJobs, boolean replace) 方法可批量增加任务和触发器
• Scheduler.unscheduleJobs(List triggerKeys) 方法提供批量取消任务的
• Scheduler.deleteJobs(List jobKeys) ,不用说,这是批量删除任务的
• Scheduler.checkExists(JobKey jobKey) 和 Scheduler.heckExists(TriggerKey triggerKey) 提供用于检测任务关键字的唯一性
• JDBCJobStore now allows one set of tables to be used by multiple distinct scheduler instances
• JDBCJobStore is now capable of storing non-core Trigger implementations without using BLOB columns, through the use of the new TriggerPersistenceDelegate interface, which can (optionally) be implemented by implementers of custom Trigger types.
• JDBCJobStore 包含了 SybaseDelegate 用以提升跟 Sybase 数据库的兼容性
• Cron 表达式支持指定每月的最后一天和最后一周,例如 L-3 为每月的最后三天
• 包含调度信息的 XML 文件增加了用来指定启动时间和间隔时间的方法
From schema: <xs:element name="start-time-seconds-in-future" type="xs:nonNegativeInteger"/>
• XML 文件支持为触发器指定 priority 属性
• QuartzInitializerListener (and QuartzInitializerServlet) 支持新的参数 "wait-on-shutdown"
• 增加核心任务 DirectoryScanJob
• Added ability to add the ServletContext into the SchedulerContext when using QuartzInitializerListener or QuartzInitializerServlet to initialize Quartz within a Java EE web application.
另外Quartz 2.0 不再使用 DBCP 做为数据库连接池,而改用了 C3P0。
还有很多,详情请看What's New in Quartz 2.0