首页 > 其他分享 >任务调度工具

任务调度工具

时间:2024-02-19 14:11:27浏览次数:34  
标签:CronUtil public util import 工具 任务调度 true 定时

定时工具

import cn.hutool.cron.CronUtil;
import cn.hutool.cron.task.Task;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
import org.springframework.util.StringUtils;
import javax.annotation.PostConstruct;
import javax.annotation.Resource;
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;

/**
 * 定时工具
 */
@Component
@Slf4j
public class CornService {
    
    @Value("${schedule.cornStr:0 1/2 * * * ? }")
    private String cornStr;
    
    public static final Map<String, String> cornJobIdToDescMap  = Collections.synchronizedMap(new HashMap<>());

    @PostConstruct
    public void enableCornService(){
        enableCornServer(true);
        executeTask();
    }

    /**
     * Description: 是否开启定时任务
     * @param enable true为开启,false为关闭
     */
    public Boolean enableCornServer(Boolean enable){
        if (enable) {
            //支持秒级别定时任务
            CronUtil.setMatchSecond(true);
            //定时服务启动
            CronUtil.start();
            //使用deamon模式
            //CronUtil.start(true);
            return true;
        }
        CronUtil.stop();
        cornJobIdToDescMap.clear();
        return true;
    }

    /**
     * Description: 执行定时任务
     */
    public String executeTask() {
        // 动态新增定时任务,因为项目启动时已启动定时服务,所以新增后cron条件触发即执行
        String jobId = CronUtil.schedule(cornStr, (Task) () -> {
            log.info("任务开始");
        });
        if (!StringUtils.isEmpty(jobId)) {
            return jobId;
        } else {
            return null;
        }
    }
}

添加配置

# 定时任务重连设备
schedule:
  # 每2分钟重连一次
  cornStr: 0 0/2 * * * ?

标签:CronUtil,public,util,import,工具,任务调度,true,定时
From: https://www.cnblogs.com/hhddd-1024/p/18020970

相关文章

  • Qt 项目实战:MD5工具开发
    MD介绍MD5消息摘要算法(英语:MD5Message­DigestAlgorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hashvalue),用于确保信息传输完整一致。MD5由美国密码学家罗纳德·李维斯特(RonaldLinnRivest)设计,于1992年公开,用以取代MD4算法。MD5应用编辑......
  • FileZilla 免费的FTP软件工具下载与使用教程
    FileZilla是一个免费并且全平台可用的FTP软件,借助FileZilla可以方便的通过FTP实现文件的上传与下载。FileZilla是VPSGO一直在使用的,所以今天就把这个工具介绍给大家,包括FileZilla下载、FileZilla安装,以及简单的FileZilla教程。一、FileZilla下载FileZilla官网:https:/......
  • JimuReport积木报表 v1.7.0 变革版本发布,低代码报表设计工具
    项目介绍一款免费的数据可视化报表,含报表和大屏设计,像搭建积木一样在线设计报表!功能涵盖,数据报表、打印设计、图表报表、大屏设计等!Web版报表设计器,类似于excel操作风格,通过拖拽完成报表设计。秉承“简单、易用、专业”的产品理念,极大的降低报表开发难度、缩短开发周期、节......
  • 思维导图工具Xmind
    下载链接:https://pan.baidu.com/s/12wVLRIrwy4rOzvMuzy8ofg?pwd=h008xmind免费安装使用教程_xmind安装csdn-CSDN博客......
  • 常用的MODBUS协议测试工具推荐
    介绍一些常用的MODBUS测试工具。1、ModscanModscan是一款免费的MODBUS测试工具,支持ModbusRTU和TCP和ASCII协议。它可以进行单点和多点的读写操作,并且可以生成MODBUS协议相关的报告。还支持模拟器模式,使用户可以通过虚拟设备对ModBus进行测试。2、CASModbusS......
  • 几个工具收集(glances,jq)
    glances工具:性能监控,类似top命令,监控cpu,内存,硬盘等性能参数等等yum-yinstallepel-releaseyum-yinstallglances直接执行glancesjq  格式化工具,变成json格式#########变成json格式[root@host101~]#echo'{"name":"阿良","sex":"男","city":&q......
  • 虚拟币行情查询转发工具
    1需求:websocket实时查询火币、币安,Okex平台的虚拟币交易价格,socket方式推送到服务器,用于服务器数据处理和交易量化websocket实时查询火币、币安,Okex平台的虚拟币交易价格,socket方式推送到服务器,用于服务器数据处理和交易量化2截图3实现过程中遇到一些问题,这里记录下......
  • Protues的串口工具Virtual Terminal
    用Protues来验证ARM的串口发送,有两种办法,一种是用Protues的串口工具VirtualTerminal第二种是用串口助手(此种方法,需要下载并安装虚拟串口软件,然后用虚拟串口连接虚拟硬件和串口助手,比较麻烦) (第二种方法需要虚拟串口软件,比较麻烦,因此,建议大家使用Protues的串口工具VirtualTermi......
  • 教职云智慧职教视频课件课程下载工具,如何在电脑端下载智慧职教视频课程课件资料到本地
    一.安装智慧职教课程下载器1.获取学无止下载器https://www.xuewuzhi.cn/icve_downloader2.下载安装后,然后点击桌面快捷方式运行即可。注意:杀毒软件可能会阻止外部exe文件运行,并将其当做成病毒,直接添加信任即可,本软件绝对没有木马病毒。二.使用说明1.学无止下载器介绍学......
  • 中国大学mooc慕课视频课件课程下载工具,如何在电脑端下载中国大学mooc慕课视频课程课件
    一.安装中国大学mooc慕课课程下载器1.获取学无止下载器https://www.xuewuzhi.cn/icourse163_downloader 2.下载安装后,然后点击桌面快捷方式运行即可。注意:杀毒软件可能会阻止外部exe文件运行,并将其当做成病毒,直接添加信任即可,本软件绝对没有木马病毒。二.使用说明1.学无......