文章定时自动采集(前两天有小伙伴问松哥如何实现定时任务的动态配置?(组图))
优采云 发布时间: 2021-12-31 14:05文章定时自动采集(前两天有小伙伴问松哥如何实现定时任务的动态配置?(组图))
定时任务可以看作是我们日常开发中比较常见的需求,市场上也有很多成熟的框架:
但是朋友们都知道,其实我们的Spring框架也提供了相应的定时任务。这个定时任务是通过@EnableScheduling注解开启的。宋歌还写了文章给大家分享一下这个注解的基本用法:
但是之前的定时任务都是预先固定好硬编码的,无法动态配置。前两天有朋友问宋歌如何实现定时任务的动态配置?
这个东西如果是基于xxl-job这样的框架,其实还是比较容易的,不过也可以通过Spring自带的@EnableScheduling注解来实现,并不难。宋歌在此基础上匆匆写了一篇,今天先跟大家说一下一般用法,然后抽空再写一篇文章的实现原理介绍。
项目开源,项目地址:
以可食用模式克隆项目:git clone。本地数据库创建了一个名为 schedule 的库。修改配置文件src/main/resources/application.yaml,主要修改数据库连接的用户名和地址。启动项目。浏览器访问:8080,可以看到如下页面:
表示启动成功。
功能介绍 项目启动时,会自动从数据库中加载状态为1的定时任务并开始执行。1表示开启状态的定时任务,0表示关闭状态的定时任务。单击页面上的“添加作业”按钮以添加新的定时任务。如果新任务的bean名称、方法名称、方法参数与已有记录相同,则视为重复作业,重复作业将无法添加。
添加作业的页面如下:
这里涉及到几个参数,它们的含义如下:
添加作业成功的提示如下:
作业添加失败提示如下:
点击作业编辑,可以修改作业的数据:
修改将立即生效。
单击分配删除以删除现有分配。如果正在执行删除的作业,请先停止作业,然后再将其删除。您也可以通过单击列表中的切换按钮来切换作业的状态。
技术栈其他
这是一个用于学习的演示,而不是一个完整的项目。宋歌会发一篇文章的文章和大家分享一下具体的实现思路。
好了,先说这么多。