Spring 框架提供了多种定时调度方式,常用的包括:
- @Scheduled 注解
可以使用 @Scheduled 注解将一个方法定时执行。可以指定固定的时间间隔、固定的执行时间点,也可以使用 Cron 表达式来指定执行时间。
- Timer 和 TimerTask
Java 自带的 Timer 和 TimerTask 类可以用于实现简单的定时调度。可以使用 Timer.schedule() 方法来指定定时任务的执行时间和间隔时间,通过 TimerTask.run() 方法来执行定时任务。
- ScheduledExecutorService
Java 的 ScheduledExecutorService 接口提供了定时调度功能,可以使用 ScheduledExecutorService.schedule() 方法来指定定时任务的执行时间和间隔时间,通过 Runnable.run() 方法来执行定时任务。
- Quartz
Quartz 是一个开源的定时调度框架,可以通过配置文件或编码方式来实现定时任务的调度。Quartz 可以支持非常复杂的任务调度需求,具有高度的灵活性和可扩展性。
以上是常用的 Spring 定时调度方式,可以根据具体的业务需求选择合适的方式来实现定时任务。