http://www.quartz-scheduler.org/
https://www.baeldung.com/quartz

Quartz Scheduler是一个功能强大的开源任务调度库,用于在Java应用程序中实现各种定时任务和计划任务。它允许开发人员按照预定的时间表执行任务,包括重复执行、延迟执行、定时执行等。

Quartz Scheduler的主要特性包括:

灵活的定时任务调度:Quartz Scheduler允许开发人员定义任务的执行时间和频率,可以按需求设置任务的执行间隔、重复次数、延迟执行等。

多任务和多线程支持:Quartz Scheduler可以同时管理多个任务,并且可以在多个线程中并发执行这些任务,提高任务调度的效率和性能。

持久化和集群支持:Quartz Scheduler支持将任务调度信息持久化到数据库中,以便在应用程序重新启动后能够恢复任务调度状态。同时,它还提供了集群支持,可以在多个应用程序实例之间共享任务调度。

错误恢复和任务监听器:Quartz Scheduler提供了错误恢复机制,可以处理因应用程序崩溃或其他错误导致的任务执行中断。此外,开发人员还可以实现任务监听器,以便在任务执行前后执行一些自定义逻辑。

作业和触发器:Quartz Scheduler使用作业(Job)和触发器(Trigger)的概念来描述任务调度。开发人员可以定义作业的执行逻辑,并使用触发器定义任务的执行时间和频率。