2010-12-06 3 views

Antwort

14

Sie können prüfen, org.quartz.CronExpression Es hat eine Methode namens getNextValidTimeAfter, die Sie verwenden können.

+0

Dank Saugata, es half und das Problem gelöst :) – Unicorn

5

Wenn Sie Frühling verwenden könnten Sie verwenden:

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); 
5

Hier ist eine Alternative ähnlich wie Quarz des CronExpression aber ohne einen vollwertigen Scheduler zu einem Projekt hinzuzufügen mit: cron-utils

Sie bekommen das Datum, das Sie mit folgenden benötigen:

//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)); 

Gemäß der offiziellen Beschreibung, ist:

Eine Java-Bibliothek zu analysieren, zu validieren, migrieren Crons sowie für sie lesbare Beschreibungen für sie. Das Projekt folgt der Semantic Versioning Convention und verwendet die Apache 2.0-Lizenz.

Verwandte Themen