2016 - 2024

感恩一路有你

定时任务实现原理 如何在spring中配置定时任务?

浏览量:2167 时间:2021-03-14 08:34:32 作者:admin

如何在spring中配置定时任务?

定时任务的实现方式有多种,例如JDK自带的Timer TimerTask方式,Spring3.0以后的调度任务(ScheduledTask),Quartz等。

Timer TimerTask是最基本的解决方案,但是比较远古了,这里不再讨论。Spring自带的Scheduled

Task是一个轻量级的定时任务调度器,支持固定时间(支持cron表达式)和固定时间间隔调度任务,支持线程池管理。以上两种方式有一个共同的缺点,那就是应用服务器集群下会出现任务多次被调度执行的情况,因为集群的节点之间是不会共享任务信息的,每个节点上的任务都会按时执行。Quartz是一个功能完善的任务调度框架,特别牛叉的是它支持集群环境下的任务调度,当然代价也很大,需要将任务调度状态序列化到数据库。Quartz框架需要10多张表协同,配置繁多,令人望而却步...

经过折中考虑,还是选择了Spring的ScheduledTask来实现定时任务。如下:

1.Spring配置文件application-context.xml中添加task命名空间和描述。

[html]viewplaincopy

定时任务实现原理 java实现定时任务 定时任务时间设置

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。