Una experiencia que compartiré con usted hoy es la tarea de tiempo de Java, lo que significa que el siguiente código se ejecuta en un momento determinado en un día.
Clase pública TIMMANAGER {// Intervalo de tiempo Private Static Long Long_day = 24 * 60 * 60 * 1000; /Calendar.set (calendario.hour_of_day, 2); Tarea // Si el tiempo de la primera ejecución de la tarea de tiempo es menor que la hora actual // en este momento, la hora de la tarea de tiempo se agrega durante un día, para que esta tarea se pueda realizar en el próximo punto de tiempo . Si no agrega un día, la tarea se ejecutará de inmediato. if (date.before (new date ())) {date = this.adddy (date, 1);} temporizador de temporizador = new Timeer (); Timer.schedule (tarea, fecha, periodista);} // aumentar o reducir el número de días.
En la clase Timermanager, todos deben prestar atención al problema del tiempo. Si establece la tarea a las 2 am. Pero se publica después de las 2 en punto o en los servicios reiniciados. Para evitar esta situación, solo se puede juzgar que si el momento de liberar o reiniciar el servicio es más tarde que el momento de realizar tareas, agregue un día sobre esta base.
Public Class NFDFlightatAtask extiende TimrTask {private static log sold = logger.getLogger (nfdflightatatiMrTask.classs); --------------- Análisis de las anormalidades de la información de análisis --------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- ------------------------------- ;} Public void contextDestroyed (evento ServiceTContextEvent) {}}}
Luego configure un monitor en Web.xml
<Oyerer> <Oyerer-class> com.listener.nfdflightdataTaskListener </oyeing-class> </oyente>
Lo anterior es todo el contenido de este artículo.