Utilice JAVA para completar tareas automáticamente de forma programada
JAVA necesita usar el temporizador TimerTask y el oyente en JAVA al implementar tareas automáticas programadas. Esto puede parecer un poco difícil, ¡pero aún así es relativamente fácil de implementar! ¡Tigre de papel~~!
La siguiente columna es muy detallada sobre cómo cargar el temporizador al servidor (también pueden ser otras acciones, depende de lo que se deba cargar. Mi blog lo ha escrito como referencia). se implementará con pasos simples
Primero cree el bean de acción
paquete sun time
public class UploadFile{
;
/**
* ¿Se omite el código para cargar? Puedes echar un vistazo a mi registro a continuación
__haiming/blog/static/ / Usa *** arupload para cargar y descargar [con ejemplos]
__haiming/blog/static/ / Utilice Struts Implemente cargas de archivos múltiples
*/p>
public void upload()
{
Sistema fuera println( El sistema archivo cargado automáticamente);
}
}
Cree un temporizador MyTaker y complete las funciones correspondientes
paquete sun time
p>p>
importar utilidad java Calendar
importar utilidad java TimerTask
importar servlet javax ServletContext
clase pública MyTaker; TimerTask {
isRun booleano estático privado = false;
contexto privado?ServletContext;
Calendario privado ca = Calendario getInstance(); p> public MyTaker( contexto ServletContext)
{
ntext = contexto
}
@Override
ejecución pública vacía ( ) {
if(!isRun){
if( ==ca get(Calendar MINUTE)){
isRun = true;
registro de contexto(La tarea cargada se está ejecutando);
UploadFile uf = new UploadFile();
uf upload(); p> isRun =false ;
registro de contexto (tarea completada con éxito
}
}
else
<); p> {Sistema fuera println (la tarea aún no se ha ejecutado)
}
}
Crea el oyente ContextListener);
hora del sol del paquete
importar servlet javax ServletContextEvent
<p> importar servlet javax ServletContextListener
importar hora de sol MyTaker
importar utilidad java *
clase pública ContexListener?implementa ServletContextListener{
privado? Temporizador temporizador = null;
@Override
contexto vacío públicoDestroyed(evento ServletContextEvent) {
cancelación del temporizador(); p> evento getServletContext() log(la lista de tareas ha sido destruida);
}
@ Override
public void contextInitialized (evento ServletContextEvent) {
temporizador = nuevo temporizador (verdadero);
registro de evento getServletContext() (el servidor está activo
programación del temporizador (nuevo? MyTaker(evento getServletContext()); /// Verifique la frecuencia de escaneo
event getServletContext() log(lista de tareas cargada
}
}
Finalmente; El primer paso es configurar el oyente en Web xml