devtools-cron4j是一个小巧实用的Java调度工具包,出自devtools系列,它提供:支持API定义cron表达式内置多种调度器实现(Timer、Executor等)支持中断策略(Cancellable)安装:com.github.paganini2008devtools-cron4j2.0.3兼容Jdk1.8+如何生成cron表达式?参考示例://*/5****?publicstaticCronExpressiongetCron1(){返回CronExpressionBuilder.everySecond(5);}//0*/2***?publicstaticCronExpressiongetCron2(){returnCronExpressionBuilder.everyMinute(2);}//026,29,33***?publicstaticCronExpressiongetCron3(){returnCronExpressionBuilder.everyHour().minute(26).andMinute(29).andMinute(33);}//0*14**?publicstaticCronExpressiongetCron4(){returnCronExpressionBuilder.everyDay().hour(14).everyMinute();}//00-1015**?公共静态CronExpressiongetCron5(){返回CronExpressionBuilder.everyDay().hour(15).minute(0).toMinute(10);}//0023**?publicstaticCronExpressiongetCron6(){returnCronExpressionBuilder.everyDay().at(23,0);}//01512**?publicstaticCronExpressiongetCron7(){returnCronExpressionBuilder.everyDay().hour(12).minute(15);}//000,13,18,21**?publicstaticCronExpressiongetCron8(){返回CronExpressionBuilder.hour(13).andHour(18).andHour(21);}//01510?*6LpublicstaticCronExpressiongetCron9(){returnCronExpressionBuilder.everyMonth().lastWeek().Fri().at(10,15);}//01510?*周一至周五publicstaticCronExpressiongetCron10(){returnCronExpressionBuilder.everyWeek().Mon().toFri().at(10,15,0);}//00/512,18**?publicstaticCronExpressiongetCron11(){returnCronExpressionBuilder.hour(12).andHour(18).everyMinute(5);}//03023L*?公共静态CronExpressiongetCron12(){返回CronExpressionBuilder.everyMonth().lastDay().at(23,30);}//010,20,3012?7-116L2021-2025publicstaticCronExpressiongetCron13(){returnCronExpressionBuilder.year(2021).toYear(2025).Aug().toDec().lastWeek().Fri().hour(12).minute(10).andMinute(20).andMinute(30);}//01023?*6#3publicstaticCronExpressiongetCron14(){returnCronExpressionBuilder.everyMonth().week(3).Fri().at(23,10);}//015-50/20-610-28*?publicstaticCronExpressiongetCron15(){returnCronExpressionBuilder.everyMonth().day(10).toDay(28).hour(0).toHour(6).minute(15).toMinute(50,2);}如何解析cron表达式?System.out.println(CRON.parse("*/5****"));System.out.println(CRON.parse("0*/2***?"));System.out.println(CRON.parse("01510LW*?"));System.out.println(CRON.parse("001210W*?"));System.out.println(CRON.parse("01510?*MON-FRI"));System.out.println(CRON.parse("026,29,33***"));System.out.println(CRON.parse("015-50/20-610-28*"));System.out.println(CRON.parse("01023?*6#3"));System.out.println(CRON.parse("010,20,3012?7-116L2021-2025"));如何测试cron表格?CRON.parse("03023L*?").forEach(日期->{System.out.println(DateUtils.format(date));},20);System.out.println("------------------------------------------");CRON.parse("001210-15*").forEach(date->{System.out.println(DateUtils.format(date));},20);如何执行调整程序?CronExpressionexpression=CronExpressionBuilder.everySecond(5);ThreadPoolTask??Executorexecutor=newThreadPoolTask??Executor();executor.schedule(newTask(){@Overridepublicbooleanexecute(){System.out.println("任务运行时间:"+newDate());returntrue;}@OverridepublicCancellablecancellable(){返回Cancellables.cancelIfRuns(-1);}@OverridepublicvoidonCancellation(Throwablee){System.out.println("Cancelled.");}},表达);系统.in.read();executor.close();源码地址:https://github.com/paganini20...