根据cron表达式计算最近几次的执行时间

基于Vue的Cron表达式 例如:在 DayofMonth使用5W,如果5日是星期六,则将在最近的工作日:星期五,即4日触发。例如:子表达式(天(星期))可以为 “MON-FRI”,“MON,WED,FRI”,“MON-WED,SAT”(5),:表示列出枚举值。例如:在Minutes域使用5,20,则意味着在5和20分每分钟触发一次。在子表达式(分钟)里的“3/20”表示从第3分钟开始,每20分钟(它和“3,23,43”)的含义一样。因此,“*”在子表达式(月)里表示每个月的含义,“*”在子表达式(天(星期))表示星期的每一天。 阅读详情
使用场景:

使用quartz做为后台任务调度框架,cron表达式设置时间,需要根据cron表达式计算出最近n次的执行具体时间--这个通常在开放给用户修改任务执行时间给出提示时非常有用

解决:

使用quartz的jar包中提供的TriggerUtils类来计算

具体代码:

package com.crazycoder2010.quartz;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.List;

import org.quartz.TriggerUtils;
import org.quartz.impl.triggers.CronTriggerImpl;

public class Main {
    
    /**
    * @param args
    * @throws ParseException 
     * @throws InterruptedException 
     */
    public static void main(String[] args) throws ParseException, InterruptedException {
       CronTriggerImpl cronTriggerImpl = new CronTriggerImpl();
       cronTriggerImpl.setCronExpression("0 0 15 5 * ?");//这里写要准备猜测的cron表达式
       Calendar calendar = Calendar.getInstance();
       Date now = calendar.getTime();
       calendar.add(Calendar.YEAR, 2);//把统计的区间段设置为从现在到2年后的今天(主要是为了方法通用考虑,如那些1个月跑一次的任务,如果时间段设置的较短就不足20条)
       List<Date> dates = TriggerUtils.computeFireTimesBetween(cronTriggerImpl, null, now, calendar.getTime());//这个是重点,一行代码搞定~~
       System.out.println(dates.size());
       SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
       for(int i =0;i < dates.size();i ++){
           if(i >19){//这个是提示的日期个数
              break;
           }
           System.out.println(dateFormat.format(dates.get(i)));
       }
    }

}




Cron表达式及相关库的使用:获取最近十次执行结果以及转为中文描述 cron表达式从生成,到获取执行时间,再到解析为中文描述,看这一篇就够啦 阅读详情

相关推荐

Oracle 解析cron定时表达式

Oracle 解析cron表达式1.概述2.步骤2.1 规范cron表达式合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 1.概...

wangguogangll的博客 2016

Java 根据Cron表达式获取近几次任务执行时间

这篇博客将介绍Java 如何根据Cron表达式获取近几次任务执行时间。实际上使用 **quartz** 包 **CronSequenceGenerator** 以及**TriggerUtils.computeFireTimes** 俩种方法进行时间获取;

qq_40985985的博客 3231

cron 表达式详解

Cron 表达式格式字符串:"秒域 分域 时域 日域 月域 周域 年域"

m0_46887197的博客 1814

Cron 获取下一次执行时间

@Slf4j public class CronUtil { private CronUtil() { } public static CronTrigger getCronTrigger(String cron) { if (!CronExpression.isValidExpression(cron)) { throw new...

xyw10000 2207

如何在iPhone上本地运行SmolVLM?5亿参数模型实战指南(附Swift代码)

本文详细介绍了如何在iPhone上本地部署和运行轻量高效的SmolVLM多模态模型。通过实战指南,分享了使用Swift和MLX框架进行环境配置、模型加载、内存优化以及实现实时图像分析与文本生成的完整流程,帮助开发者在移动端高效运行AI视觉语言模型。

echo99的专栏 654

京东联盟h5st(3.1)加密参数逆向实战与反爬对抗策略

本文详细解析了京东联盟h5st(3.1)加密参数的逆向分析与实战破解过程。通过接口分析定位关键加密函数,拆解h5st结构并还原其基于SHA256和HMAC-SHA256的加密逻辑,最终使用Python集成JavaScript环境成功复现加密算法,并分享了应对反爬的频率限制、IP封禁及算法升级等对抗策略。

weixin_29246195的博客 1738

TriggerUtils 根据cron表达式计算最近几次的执行时间

使用场景: 使用quartz做为后台任务调度框架,cron表达式设置时间,需要根据cron表达式计算出最近n次的执行具体时间--这个通常在开放给用户修改任务执行时间给出提示时非常有用 解决: 使用quartz的jar包中提供的TriggerUtils类来计算 具体代码: package demo; import Java.text.ParseException; import j

空杯心态_虚怀若谷 1721

Eclipse在Mac上报错JNI_CreateJavaVM?可能是你的JDK架构搞错了(附Adoptium JDK下载指南)

本文深入解析了Mac(尤其是Apple Silicon芯片)上Eclipse启动时出现“JNI_CreateJavaVM”错误的根本原因,即JDK架构(aarch64与x86_64)不匹配。文章提供了详细的诊断步骤,并推荐通过下载并配置Eclipse Adoptium提供的aarch64版本JDK来彻底解决问题,同时附上清晰的配置指南。

weixin_29065659的博客 321

quartz.net 根据cron表达式计算最近几次的执行时间

网上查了很久,没找到.net版本的,java的有些,后来自己看了下api,发现实现起来很简单,代码再传共享下 /// &lt;summary&gt; /// Corn表达式的运行时间 /// &lt;/summary&gt; /// &lt;param name="cron"&gt;表达式&lt;/param&gt; //...

sumirry的专栏 1976

基于STM32的心电图监测系统设计

本论文旨在设计一种基于 STM32 微控制器的心电图监测系统,通过对人体心电信号的采集、处理和分析,实现对心电图的实时监测与显示。系统采用高精度的心电信号采集模块,结合 STM32 强大的数据处理能力,能够有效去除噪声干扰,提取出准确的心电信号特征。同时,利用 LCD 显示屏实现心电波形的实时显示,并通过蓝牙模块实现数据的无线传输,方便医护人员远程监测。经测试,该系统具有较高的精度和稳定性,能够满足临床心电图监测的基本需求,为医学诊断提供可靠的数据支持。

道亦无名 1349

Android AMS——AMS初始化(二)

Android AMS 也是一个系统服务,属于系统服务中的引导服务,在 startBootstrapServices() 方法中启动。这里我们就来看一下 ActivityManagerService 的启动流程。

小旭的专栏 775

根据Cron表达式获取近几次任务执行时间

在使用Quartz进行任务调度时,需要用到Cron表达式,有时候在设置完Cron表达式之后,需要知道此cron表达式对应的最近几次执行的具体时间,我这里提供了一个方法来获取最近几次的运行时间。 package com.declan; import java.text.SimpleDateF...

2589

AutoGLM-Phone 实现“豆包 AI 手机”的自动化操作手机的实战方案教程 让普通手机秒变ai手机

是一个基于视觉语言模型(VLM)的 AI 手机智能助理框架。❌ 不依赖固定坐标❌ 不需要提前录制脚本✅ 能“看懂”手机屏幕✅ 能理解自然语言指令✅ 能自动规划操作路径并执行让 AI 像人一样看屏幕、想步骤、点手机。从工程角度看,AutoGLM-Phone 已经具备“AI 手机助理”的完整雏形能看能理解能规划能执行能跨 App所谓的「豆包 AI 手机」,本质上就是这类能力的产品化封装。而现在,这套能力已经可以被普通开发者亲手跑起来、改起来、甚至接入自己的业务场景。

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 593

Java 根据cron表达式计算执行时间

Java 根据cron表达式计算执行时间

qq_43548590的博客 6339

智能制造之物料详解

制造业业务系统中的物料流转贯穿需求、采购、生产到交付全流程,各系统协同实现精准追踪。需求阶段由CRM/ERP/PLM生成物料计划;采购入库阶段SCM/WMS/QMS完成采购质检;生产阶段MES/APS协调领料加工;成品交付阶段WMS/SCM处理出库物流。整个流程以BOM为蓝图,ERP为调度中心,通过数据联动实现物料状态、位置和数量的全链路可追溯。

cdfunlove的博客 654

手把手教你学Simulink——基于重复控制(RC)的并网逆变器场景实例:基于RC的单相并网逆变器仿真

本次教程深入剖析了重复控制(RC)在单相并网逆变器中的应用,解决了周期性谐波抑制这一核心难题。核心收获RC是谐波抑制的“核武器”:它利用内模原理,对所有周期性谐波提供无限大增益,实现理论上无静差的跟踪和抑制。PI+RC是黄金组合:PI提供快速响应,RC提供稳态精度,二者结合,兼顾了动态与稳态性能。结构简单,效果卓越:相比多个PR控制器,RC仅需一个模块,即可抑制所有谐波,设计简洁。电能质量的终极追求,是波形的纯净。重复控制,如同一位不知疲倦的校对员它记住每一次错误(上一周期的误差),

MHD0815的博客 189

Quartz-Cron表达式统计最近几次的执行时间

概述 示例 示例源码概述使用quartz做为后台任务调度框架,cron表达式设置时间,需要根据cron表达式计算出最近n次的执行具体时间–这个通常在开放给用户修改任务执行时间给出提示时非常有用解决:使用quartz的jar包中提供的TriggerUtils类来计算示例1、先根据corn算出执行时间例如:获取着一个月内 每天早上10:15触发的日期package com.xgj.quartz.quar

小工匠 3万+

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

根据cron表达式输出匹配的n次执行时间

 只是为了自己用起来能快速找到,转自:https://www.cnblogs.com/wulm/p/6923545.html /** * * @desc 计算表达式近n次时间 * @auth josnow * @date 2019年2月23日 下午12:16:25 * @param cron * @return */ ...

b13001216978的博客 1004

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

【转】根据Quartz-Cron表达式获取最近几次执行时间

public static List<String> getRecentTriggerTime(String cron) { List<String> list = new ArrayList<String>(); try { CronTriggerImpl cronTriggerImpl = new CronTriggerI...

weixin_30681121的博客 228

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

js 根据cron表达式获取最近五次执行时间

【代码】js 根据cron表达式获取最近五次执行时间。

qq_40596257的博客 2399

Cron 最近几次执行时间获取

cron执行时间 定时任务

小菜鸟的博客 229

根据Quartz-Cron表达式获取最近几次执行时间

本案例采用quartz-2.2.3jar包方案一:指定次数,直接获取(推荐),响应速度快 public static List&lt;String&gt; getRecentTriggerTime(String cron) { List&lt;String&gt; list = new ArrayList&lt;String&gt;(); try { CronTriggerImpl ...

loveLifeLoveCoding的博客 6118

CRON表达式与时间区间计算:getNextRunDate和getPreviousRunDate深度解析

想要掌握PHP中的任务调度和定时执行吗?CRON表达式是每个PHP开发者必须了解的核心技术。本文将深度解析cron-expression库中的`getNextRunDate`和`getPreviousRunDate`方法,帮你彻底理解CRON表达式的时间区间计算原理。🚀 ## 什么是CRON表达式? CRON表达式是一种时间格式,用于定义任务执行的时间规则。在PHP中,cron-expres

gitblog_00283的博客 1097
上一篇: 数据结构与算法分析-第一章Java类(05)
下一篇: RedHat6.0上安装jdk1.7
CrazyCoder2010
博客等级 码龄16年 298粉丝 110原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值