Este artigo apresenta a Web Java para executar tarefas regularmente todos os dias e compartilhá -las com você. Os detalhes são os seguintes:
Primeiro passo:
pacote com.eh.util; importar java.util.calendar; importar java.util.date; importar java.util.timer;/** * Java Tarefas cronometradas, executar tarefas regularmente todos os dias; public timerManager () {calendário calendário = calendar.getInstance (); / *** Personalize o método de execução diário 2:00 ***/ calendar.set (calendar.hour_of_day, 16); calendário.set (calendário.Minute, 10); calendário.set (calendário.second, 0); Data data = calendário.gettime (); // Tempo da primeira vez de execução do sistema de tarefas de tempo.out.println (data); System.out.println ("Antes da comparação do método:"+date.before (new Date ())); // Se o horário da execução da tarefa de tempo pela primeira vez for menor que o horário atual // neste momento, adicione um dia à primeira vez em execução da tarefa de tempo para que essa tarefa possa ser executada no próximo momento. Se não houver dia adicional, a tarefa será executada imediatamente. O ciclo de execução do loop é baseado no horário atual se (date.Before (new Date ())) {date = this.addday (data, 1); System.out.println (data); } Timer timer = new Timer (); NFDFLIGHTDATATIMERTASK Tarefa = new NFDFLIGHTDATATIMERTASK (); // Programe a tarefa especificada para iniciar a execução de atraso fixo repetido no horário especificado. Timer.Schedule (Tarefa, Data, Período_Day); } // Aumentar ou diminuir o número de dias de data public addday (data da data, int num) {calendário startdt = calendar.getInstance (); startdt.setTime (data); startdt.add (calendar.day_of_month, num); return startdt.gettime (); }}Etapa 2:
pacote com.eh.util; importar java.text.simpledateFormat; importar java.util.calendar; importar java.util.timertak; /*** Na classe TimerManager, todos devem prestar atenção à questão do tempo. Se você definir para executar tarefas às 2 da manhã, mas se você divulgou o programa após as duas horas ou reinicie o serviço, a tarefa será executada imediatamente, em vez de esperar até as duas horas do dia seguinte. Para evitar essa situação, só podemos julgar que, se o tempo de liberação ou reinicialização do serviço for posterior ao tempo para o momento da execução da tarefa, adicione um dia nesta base. * @author wls * */public class nfdflightdatatimerTask estende o TimerTask {private static simpledateFormat formatter = new SimpleDateFormat ("yyyy-mm-dd hh: mm: ss"); @Override public void run () {try {// Escreva o conteúdo que deseja executar aqui System.out.println ("Execução hora atual"+formato (calendar.getInstance (). Gettime ())); } catch (Exceção e) {System.out.println ("----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Etapa 3:
pacote com.eh.util; importar javax.servlet.servletletContextevent; importar javax.servlet.servletletcontextListener; classe pública nfdflightdatataSkListener implementa servletContextListener {public void contextinitialized (servContextevent scer) {timer {novo timer {public void) } public void contextDestroyed (servletContextevent scce) {// ToDO Method Stub}}}}Etapa 4: configure o arquivo web.xml
<!-nfdflightdatataSkListener ouvinte-> <Ilvier> <lister-class> com.eh.util.nfdflightdatatasklistener </lister-class> </lorvener>
O exposto acima é todo o conteúdo deste artigo. Espero que seja útil para o aprendizado de todos e espero que todos apoiem mais o wulin.com.