Automação de aplicação

3 respostas
E

Estou com uma aplicação Java que analisa uma planilha e manda emails dependendo de uns critérios que minha empresa trabalha, qual melhor forma de deixar essa aplicação ativa, ou terei que executar ela sempre que atualizar a planilha?

3 Respostas

claytonsilva

Opa!
Quando vc diz manter essa aplicação ativa, vc quer q ela seja executa periodicamente?
Ou como é isso?
Só pra entender direito.

E

ou periodicamente, ou toda vez que a planilha fosse atualizada, entendeu?

claytonsilva

Periodicamente vc pode fazer uma classe herdando da classe abstrata TimerTask.
Nela vc escreve o seu código no método run().

Depois vc pode criar um Timer e programar pra executar no período q vc quer.
Por exemplo:

MinhaTimerTask task = new MinhaTimerTask();
Timer t = new Timer();
t.scheduleAtFixedRate(task, 0, 60 * 60 * 1000);

Dessa forma, vai executar o método run() da sua TimerTask e depois, vai continuar executando de acordo com o tempo. Nesse caso 60 * 60 * 1000, que é uma hora (o tempo é em milissegundos).
Então esse código vai ser executado uma vez, e depois executado de hora em hora.

*O primeiro parâmetro é a sua classe que herdou de TimerTask
*O segundo parâmetro é o tempo em milissegundos para executar a primeira vez
*O terceiro parâmetro é o intervalo de tempo q deve ser executa novamente. Tbm em milissegundos.

Se preferir, pode usar a classe TimeUnit pra passar o tempo.
Nesse caso, para 1 hora, ao invés de usar 60601000, ou 3600*1000 ou ainda 3600000, vc poderia fazer

Fica mais legível, né?

Deu pra entender?

Criado 10 de março de 2016
Ultima resposta 10 de mar. de 2016
Respostas 3
Participantes 2