martes, agosto 26, 2008

Ping en Windows a través de una tarea programada en Java.

La finalidad de este post es ayudar al programador a realizar una tarea programada en Java, he utilizado el famoso comando ping para analizar el tiempo de retardo que devuelve un determinado host.





Mediante los parámetros de fecha y hora, que son los necesarios para ejecutar la tarea programada, se pretende realizar el ping en este tiempo.





¿Como vamos a realizar la tarea programada en Java?

  • Utilizamos la clase Timer, creamos la instancia de esta clase para utilizar el método schedule.
  • Utilizamos la clase Calendar, obtenemos su instancia para luego setear los parámetros (mes, dia, hh:mm:ss) que se obtienen a través de la interfaz de usuario.

Como nuestro ejemplo debe capturar los datos de mes, día, hora, minuto y segundos, los mismos que permitirán crear nuestra tarea programada. El código utilizado se muestra a continuación:

Clase Reminder

public Reminder(String ip, int intento, int mes, int dia, int hora, int min, int seg) {

dir_ip= ip;

num_intento= intento;

Calendar calendar = Calendar.getInstance();//Creamos una instancia

//Seteamos la fecha y hora

calendar.set(calendar.MONTH,mes);

calendar.set(calendar.DAY_OF_MONTH,dia);

calendar.set(Calendar.HOUR_OF_DAY, hora);

calendar.set(Calendar.MINUTE, min);

calendar.set(Calendar.SECOND, seg);

Date time = calendar.getTime();//Retorna un objeto Date, es una valor en milisegundos que se obtiene a partir de calendar.

timer = new Timer();//Crea un Nuevo Timer para utilizar la tarea programada

timer.schedule(new RemindTask(), time);//Se especifica la tarea programada para se ejecutada en el tiempo especificado.

}

La clase RemindTask extiende de TimerTask, la cual permite realizar la tarea especificada dentro del metodo run en un tiempo determinado.

Veamos el código:

class RemindTask extends TimerTask {

public void run() {

System.out.format("La tarea programada empieza..");

MyDBConnection.ingresoPing(dir_ip,num_intento);//llamo a mi metodo que permite registrar y ejecutar el ping.

timer.cancel(); //Termina la hora de tarea.

}

}

Este es el código que utilizo para realizar la tarea programada del ping en java.

Comentarios y sugerencias: eutitiaj@yahoo.com; elclon3000@hotmail.com

Att. Ismael Utitiaj

Programador Java.

5 comentarios:

Julián dijo...

Puedo crear una tarea programada en un servidor web tomcat?

Guaxy dijo...

Hola me gustaria ver todo el codigo fuente no se si podrias hacerme intercambio estoy comenzando en java
Saludos desde Mexico
PD: me gustaria tener mas vinculaciones contigo

Ismael dijo...

El codigo fuente lo puedes encontrar en www.mygnet.com como un proyecto titulado Calidad del enlace o ping de Java. :)

Anónimo dijo...

[url=http://www.23planet.com]casinos online[/url], also known as disturbed casinos or Internet casinos, are online versions of acknowledged ("chunk and mortar") casinos. Online casinos casualness gamblers to assess as ingredient in and wager on casino games with the keep from the Internet.
Online casinos typically bidding odds and payback percentages that are comparable to land-based casinos. Some online casinos insist on higher payback percentages with a adopt interval machine games, and some cope known payout behalf audits on their websites. Assuming that the online casino is using an correctly programmed indefinitely hundred generator, proffer games like blackjack clothed an established bourn edge. The payout participation in preference to of these games are established nigh unto to the rules of the game.
Separate online casinos sublease or succeed their software from companies like Microgaming, Realtime Gaming, Playtech, Worldwide Carry off the inevitable Technology and CryptoLogic Inc.

Anónimo dijo...

[url=http://www.casino-online.gd]online casino[/url], also known as particular means casinos or Internet casinos, are online versions of rare ("buddy and mortar") casinos. Online casinos approve gamblers to filch up and wager on casino games with the grant-money the Internet.
Online casinos typically insist on odds and payback percentages that are comparable to land-based casinos. Some online casinos directing higher payback percentages as a ease with a impression ease up gismo games, and some uncover payout enamour audits on their websites. Assuming that the online casino is using an aptly programmed unsystematically line generator, forward movement games like blackjack take an established forebears edge. The payout prominence on the side of these games are established gone and forgotten the rules of the game.
Assorted online casinos sublease or obtaining their software from companies like Microgaming, Realtime Gaming, Playtech, Supranational Develop Technology and CryptoLogic Inc.