dei uma pesquisada sobre Threads, Quartz e etc…
mas não achei uma solução e muito menos intendi como funcionaria isso dentro de uma aplicação JSP.
tenho um site em JSP, com alguns sistemas basicos de login, usuarios e etc…
gostaria de criar um sistema que modificasse alguns valores no MySQL de hora em hora.
Do jeito que fiz, ele estaria ativando uma Thread esperando 3600 segundos, e executando a função novamente, mas com isso a pagina .JSP precisa ficar aberta o tempo todo.
Alguem me da uma luz de como devo fazer para a função ser executada sem uma pagina JSP ser aberta?
Algo que o proprio servidor execute tal metodo em determinada hora? (1:00, 2:00, 3:00 etc…)
Uma vez precisei fazer a programação de algumas ações no servidor, eu utilizei o Quartz e funcionou bem, ele tem bastante opção de configuração. Eu obtive informação sobre ele na revista Mundo Java (número 19), la tem um artigo bem interessante.
M
maquiavelbona
Em cima do Tomcat não vai funcionar mesmo. Terás que fazer um programa em separado que rode de tempos em tempos,senão, vai ter que ficar a servlet rodando a vida inteira.
Ou podes fazer um programa e trabalhar em junto ao cron, se estiveres no linux.
Até!
B
brunolinsalves
eu faria uma aplicação separada… sem ser para web (desktop mesmo)… com threads… que fizesse as atualizações desejadas no banco…
Mas não sei se essa é a melhor solução…
P
Pedrosa
Recentemente precisei de algo parecido e resolvi com TimerTask:
ouvi falar do TimerTask…
e tb vi outro topico dizendo q o Quartz seria um canhão para matar uma mosca heheh
quero algo bem simples…
hora em hora… adiciona valores no BD… rapido e facil…
esse TimerTask funciona bem?
importjava.util.Timer;importjava.util.TimerTask;publicclassMyTimer{publicstaticfinallongTEMPO=(1000*60);// atualiza o site a cada 1 minutopublicstaticvoidmain(String[]args){System.out.println("inicio");Timertimer=null;if(timer==null){timer=newTimer();TimerTasktarefa=newTimerTask(){publicvoidrun(){try{System.out.println("Teste agendador");//chamar metodo}catch(Exceptione){e.printStackTrace();}}};timer.scheduleAtFixedRate(tarefa,TEMPO,TEMPO);}}}
nunca tentei faz um aplicativo DESKTOP… soh WEB mesmo
se for essa a solução…
alguem poderia me dizer onde tem um tutorial para fazer uma “interface” bem basica, apenas me mostrando quando as atualizações no meu BD vai acontecer ?
(Swing ?)