4.Quartz应用场景之配置化定时任务(单节点)

本文探讨了如何解决将定时任务硬编码在代码中的问题,提出通过引入Quartz和额外的库表来实现配置化的定时任务管理。在应用启动时,会从数据库加载任务配置并同步到Quartz的原生表中,降低维护成本。
摘要由CSDN通过智能技术生成

要解决的问题

把多个定时任务的时间规则写死在代码里,当有改动时,需要动代码。代码多、维护成本略高。

解决思路

引入额外的库表,把定时任务配置在库表里,应用启动时再调API配置到Quartz原生表中

额外库表

  1. 建表
CREATE TABLE `my_job_details` (
  `ID` int unsigned NOT NULL AUTO_INCREMENT,
  `JOB_NAME` varchar(190) NOT NULL,
  `JOB_GROUP` varchar(190) NOT NULL,
  `DESCRIPTION` varchar(250) DEFAULT NULL,
  `JOB_CLASS_NAME` varchar(250) NOT NULL,
  `CRON_EXPRESSION` varchar(120) NOT NULL,
  `IS_DURABLE` varchar(1) NOT NULL,
  `IS_NONCONCURRENT` varchar(1) NOT NULL,
  `IS_UPDATE_DATA` varchar(1) NOT NULL,
  `REQUESTS_RECOVERY` varchar(1) NOT NULL,
  `JOB_DATA` blob
  PRIMARY KEY (`ID`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8
  1. 初始化
INSERT INTO testdb.my_job_details
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值