是否有任何java类可以从cron表达式中获取日期
我需要找出给定cron表达式表示的日期和时间的第一次出现。是否有任何java类可以从cron表达式中获取日期,java,date,cron,cronexpression,Java,Date,Cron,Cronexpression,我需要找出给定cron表达式表示的日期和时间的第一次出现。 是否有任何java类、实用程序代码可以帮助从给定的cron表达式获取数据对象?看起来您可以使用以下任意一种: 您可以检查 它有一个名为GetNextValidTime的方法,您可以使用该方法。如果您使用的是Spring,则可以使用: CronTrigger trigger = new CronTrigger(cron); TriggerContext context = new TriggerContext() { public
是否有任何java类、实用程序代码可以帮助从给定的cron表达式获取数据对象?看起来您可以使用以下任意一种:
它有一个名为GetNextValidTime的方法,您可以使用该方法。如果您使用的是Spring,则可以使用:
CronTrigger trigger = new CronTrigger(cron);
TriggerContext context = new TriggerContext() {
public Date lastScheduledExecutionTime() {
return null;
}
public Date lastActualExecutionTime() {
return null;
}
public Date lastCompletionTime() {
return null;
}
};
return trigger.nextExecutionTime(context);
这里有一个类似于Quartz的CronExpression的替代方案,但无需向您的项目添加成熟的调度程序: 您可以通过以下方式获得所需的日期:
//Get date for next execution
DateTime now = DateTime.now();
CronDefinition cronDefinition = CronDefinitionBuilder.instanceDefinitionFor(QUARTZ);
CronParser parser = new CronParser(cronDefinition);
ExecutionTime executionTime = ExecutionTime.forCron(parser.parse("* * * * * * *"));
DateTime nextExecution = executionTime.nextExecution(now));
根据官方描述,是:
一个Java库,用于解析、验证、迁移cron以及获取可读的描述。该项目遵循语义版本控制约定,并使用Apache2.0许可证
您还可以利用spring来实现这一点
回答得很好!简单、简短、易于启动的文档。如果使用Spring,则非常完美,因为无需添加其他第三方软件包。谢谢。这是默认时区。使用这个
新的CronSequenceGenerator(cronExpression,您的_时区)特定时区的代码>。
CronSequenceGenerator generator = new CronSequenceGenerator(cronExpression);
Date nextRunDate= generator.next(new Date());