Rodar método semanalmente

Pessoal,

Eu estou com um probleminha, quero desenvolver um sistema web que possua uma lista de e-mails e quero semanalmente enviar um e-mail a esta lista. Como faria para rodar este método que envia o e-mail para a lista semanalmente??

Acho que seria mais fácil você usar um programa agendador, como o próprio Agendador de Tarefas do Windows, alguma coisa assim. Você faz um .jar executável e agenda a execução.

Faz uma Thread que dorme por 7 * 24 * 60 * 60 * 1000, ou seja por uma semana! :lol:

Brincadeira…

Eu utilizo o quartz , com ele você instancia uma Trigger semanal deste modo: TriggerUtils.makeWeeklyTrigger.

Marca um dia e que vai enviar o email…
tipo domigo …usa a classe Calendar verifica o dia da semana e utiliza um marcador ( boolean ) depois q vc enviou e no outro dia vc desmarca…

Boa tarde!

Se quiseres que rode automaticamente, terás que ou colocar uma aplicação rodando direto e quando der 7 dias, disparar emails(inviável), ou colocar num gerenciador de cronograma. No linux tem o cron, no windows eu aconselho procurar por cron for windows no google. Ai você configuraria quando iria rodar o disparo de emails e faria o seu disparador. Foi meio confuso mas qualquer dúvida, poste aí.

Até!
Marcos Iriarte

Bom, se sua aplicação vai rodar somente para enviar os e-mails, ou seja, não vai funcionar dentro do contexto de outra aplicação então talvez seja melhor não utilizar o quartz, caso contrário recomendo que utilize o quartz sim. É muito fácil criar uma Thread semanalmente e executar seu método de envio de e-mails semanalmente.

Dá uma olhada neste método:

[quote]
makeWeeklyTrigger(int dayOfWeek, int hour, int minute)

Make a trigger that will fire every week at the given day and time.[/quote]
http://www.opensymphony.com/quartz/api/

Este método que envia e-mails deverá ser parte de um sistema web. O que eu pergunto é o seguinte, como esse quartz dispara o evento semanalmente, digo isto pois não quero um thread verificando o tempo todo se é final de semana ou algo do genero. Outra coisa que me preocupa é que como é um sistema web este poderá ser interrompido, caso seja esta trigger do quartz reiniciará ou algo assim?