Agendar Tarefa!

Estou usando a classe Timer e TimerTask para agendar uma tarefa.

No código abaixo ele realiza uma tarefa numa determinada hora, mas eu quero que ele execute uma tarefa de hora em hora durante 24 horas.

Como eu faço isso, estou tendo dificuldade p/ implementar isso!
Alguem pode me ajudar!

[color=red]import java.util.Calendar;
import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;

public class AgendarHoraI {
Timer timer;

public AgendarHoraI() {
	Calendar calendar = Calendar.getInstance();
    calendar.set(Calendar.HOUR_OF_DAY, 15);  
    calendar.set(Calendar.MINUTE, 9);
    calendar.set(Calendar.SECOND, 0);
    Date time = calendar.getTime();

    //HORA DE EXECUÇÃO : 15:42:00
    
    timer = new Timer();
    timer.schedule(new RemindTask(), time);
    System.out.println("Esperando a hora de execução da tarefa");
}

class RemindTask extends TimerTask {
	
    public void run() {
        System.out.println("Executando...");
        timer.cancel(); //Fecha a thread timer
    }
}

public static void main(String args[]) {
    new AgendarHoraI();
}

}[/color]

estou utilizando Quartz em uma nova tarefa minha aqui na empresa.

é um framework muito bom, fazer isso que vc quer é muito fácil com ele, tente dar uma olhada.

www.opensymphony.com/quartz

se tiver acesso a Java Magazine Ed. 41, tem uma matéria legal sobre Quartz tb.

Agora, pra fazer com TimerTask, vc tem que reagendar toda vez que executar, ou seja, executou, vc agenda pra executar novamnente pra depois de uma hora e assim por diante, vai ter que reagendar 23 vezes.

Abraço