public class CronTest {
/**
* 根据cron表达式获取执行周期
*/
@Test
public void getPeriodByCron() {
//30s执行一次
String cron = "0/30 * * * * ?";
//spring 5.3 以后提供的工具类
//如果是低版本的spring可以使用 CronSequenceGenerator
//CronSequenceGenerator cronGenerator = new CronSequenceGenerator(crontab);
CronExpression cronExpression = CronExpression.parse(cron);
//下次预计的执行时间
LocalDateTime next1 = cronExpression.next(LocalDateTime.now());
//下下次预计的执行时间
LocalDateTime next2 = cronExpression.next(nextFirst);
//获取执行间隔
long betweenS = ChronoUnit.SECONDS.between(next1, next2);
}
}
觉得文章不错的话还麻烦点点赞给个关注😊😊😊