Necesito averiguar la primera aparición de Fecha y hora representada por la expresión cron dada. ¿Hay alguna clase Java, un código de utilidad que pueda ayudar a obtener objetos de datos de una expresión cron determinada?¿Hay alguna clase Java para obtener Fecha de la expresión cron
Respuesta
Puede comprobar org.quartz.CronExpression Tiene un método denominado getNextValidTimeAfter que se puede utilizar.
Parece que usted podría utilizar cualquiera de estos:
Si está utilizando la primavera puede usar:
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);
Aquí hay una alternativa similar a CronExpression de cuarzo pero sin tener que añadir un planificador de pleno derecho a su proyecto: cron-utils
Puede obtener la fecha que necesita con lo siguiente:
//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));
De acuerdo con la descripción oficial, cron-utils es:
Una biblioteca de Java para analizar, validar, migrar crones y obtener descripciones legibles para ellos. El proyecto sigue la Convención de Versiones Semánticas y usa la licencia Apache 2.0.
También puede aprovechar en la primavera de http://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/scheduling/support/CronSequenceGenerator.html para este
CronSequenceGenerator generator = new CronSequenceGenerator(cronExpression);
Date nextRunDate= generator.next(new Date());
- 1. expresión de Cron particular, la fecha
- 2. ¿Hay alguna alternativa de trabajos de Cron?
- 3. Expresión lambda para la fecha más reciente
- 4. Verificación de una expresión cron válida en Java
- 5. ¿Convertir la expresión de cron en bonitas cadenas de descripción? ¿Hay una biblioteca para JAVA y Objective-C?
- 6. ¿Hay alguna manera de obtener el bytecode para una clase en tiempo de ejecución?
- 7. ¿Hay alguna biblioteca de Java para la generación de miniaturas?
- 8. ¿Cómo obtener la expresión cron dado el nombre del trabajo y el nombre del grupo?
- 9. ¿Hay alguna biblioteca ActiveResource como para Java?
- 10. ¿Hay alguna clase en Java similar a android.os.Handler en Android?
- 11. Encontrar la hora del último disparo usando una expresión de Cron en Java
- 12. Expresión cron para activar el 25 de cada mes
- 13. Expresión cron de primavera para cada 30 minutos
- 14. ¿Hay alguna manera de prohibir la subclasificación de mi clase?
- 15. sólo una expresión para obtener la fecha de ayer y el primer día del mes
- 16. ¿Hay alguna clase en NLTK para normalizar y canonizar texto?
- 17. ¿Hay alguna manera de usar ConcurrentDictionary.TryUpdate con una expresión lambda?
- 18. Tarea cron: añada la fecha actual al nombre del archivo mediante Cron?
- 19. ¿Hay alguna manera de especificar una expresión lambda C# "vacía"?
- 20. ¿Hay alguna forma de obtener un valor de propiedad de un objeto utilizando la clase PropertyPath?
- 21. Configuración de Java GAE Appstats para la tarea cron
- 22. ¿Qué significa debajo de la expresión cron, significa?
- 23. Clase de cronómetro para Java
- 24. ¿Hay alguna alternativa para implementar Clone en Java?
- 25. Java - ¿Cómo obtener la fecha actual independiente de la fecha del sistema?
- 26. ¿Hay alguna clase de contenedor Qt observable?
- 27. ¿Hay alguna forma de C para obtener el número de artículo de enum en java?
- 28. ¿hay alguna forma de obtener todos los resultados posibles de un patrón de expresión regular?
- 29. ¿Hay alguna clase incorporada de Scala para capturar la salida de un proceso externo?
- 30. ¿Hay alguna alternativa de creación de PDF Java para iText?
Gracias Saugata, ayudó y resolvió el problema :) – Unicorn