Bom pessoal procurei pelo google alguma forma de programar um horario para enviar emails em um certo horário (23:59) porém
não consegui achar nada que fosse muito concreto.Vi que existe o TimeTask e também o quartz.Alguém ai ja implementou algo parecido
e tem algum exemplo?
Estou disposto a receber mais dicas também.Desde já agradeço pela atenção.
vc vai disparar este email por um servlet? por ex: www.empresa.com.br/emaildaemon?
Se ja estiver o email construido, e esta faltando apenas o comando, voce pode utilizar a ferramenta Crontab
Qualquer coisa, posta aqui sua duvida com mais detalhes
fabricioempresa
Não eu chamo um bat responsavel pelo envio de emails
cs.santos0
Sim…ja fiz exatamente isso em uma aplicação web.
Usei quartz para tal…
da uma pesquisada nesse framework q é mto simples de usar.
abraços
fabricioempresa
BOM PESSOAL ACHEI AQUI NO MESMO NO GUJ O SEGUINTE CÓDIGO
importjava.util.Calendar;importjava.util.Date;importjava.util.Timer;importjava.util.TimerTask;publicclassAgendaHoraI{Timertimer;publicAgendaHoraI(){Calendarcalendar=Calendar.getInstance();calendar.set(Calendar.HOUR_OF_DAY,15);calendar.set(Calendar.MINUTE,50);calendar.set(Calendar.SECOND,0);Datetime=calendar.getTime();//HORA DE EXECUÇÃO : 15:42:00timer=newTimer();timer.schedule(newRemindTask(),time);System.out.println("Esperando a hora de execução da tarefa");}classRemindTaskextendsTimerTask{publicvoidrun(){System.out.println("DATA EXECUÇÃO = "+newjava.text.SimpleDateFormat("dd/MM/yyyy").format(newjava.util.Date(System.currentTimeMillis())));timer.cancel();//Fecha a thread timer}}publicstaticvoidmain(Stringargs[]){newAgendaHoraI();}}
ISSO FUNCIONA MAS SERÀ QUE ISSO SERIA PROGRAMADO PARA FAZER TODO DIA?
VLW
andreiribas
Cara como muitos já falaram use o Quartz com o Spring, fica muito simples e flexível fazer o que você quer.
No capítulo anterior a esse você vê como mandar email com o Spring.
fabricioempresa
Boa Tarde resolvi o que eu precisava da seguinte maneira
publicclassAgendaHoraIimplementsRunnable{Datetime;Booleanteste;publicAgendaHoraI(){Calendarcalendar=Calendar.getInstance();calendar.set(Calendar.HOUR_OF_DAY,1);calendar.set(Calendar.MINUTE,9);calendar.set(Calendar.SECOND,00);time=calendar.getTime();}@Overridepublicvoidrun(){while(true){if(time.equals(newDate(System.currentTimeMillis()))){if(teste){teste=false;System.out.print("Executando a tarefa");}}else{try{Thread.sleep(10);teste=true;}catch(InterruptedExceptionex){Logger.getLogger(AgendaHoraI.class.getName()).log(Level.SEVERE,null,ex);}}}}}