Verificando a conexão com a internet e conectando

Olá pessoal,
Fiz umas pesquisas e achei este código para verificar a conexão com a internet :

try{  
    java.net.URL mandarMail = new java.net.URL("http://www.guj.com.br");  
    java.net.URLConnection conn = mandarMail.openConnection();  
  
    java.net.HttpURLConnection httpConn = (java.net.HttpURLConnection) conn;  
    httpConn.connect();  
    int x = httpConn.getResponseCode();  
    if(x == 200){  
           System.out.println("Conectado");  
    }  
}  
catch(java.net.MalformedURLException urlmal){  
      
}  
catch(java.io.IOException ioexcp){  
      
}  

Ele funciona normalmente, agora gostaria de saber como faço pra que seja verificado a um certo intervalo de tempo (exemplo a cada 5 minutos) e como faço pra caso não esteja conectado ele tentar a conexão com a internet(só adicionar um atalho para a conexão em ‘meus locais de rede’) e como faria para o aplicativo rodar no try do windows(uso o xp).
Desde já fico grato.

Procura usar uma Thread e deixa ela dentro de um loop

while(true)
   //verifica conexão

[quote=ivandasilva]Procura usar uma Thread e deixa ela dentro de um loop

while(true) //verifica conexão [/quote]

++

A Thread parece, de fato, ser uma boa opção. Você pode criar uma subclasse de Runnable e passar ela por parâmetro pra uma Thread. Depois é só chamar start.
Algo do tipo:

public class SuaThread implements Runnable {

    @Override
    public void run() {
        while (true) {
            // A ação que será executada 
            Thread.sleep(5 * 60 * 1000);    // aproximadamente 5 minutos
        }
    }

}

// ...
new Thread(new SuaThread()).start();
// ...

Entendo, faz tempo que fiz o curso e não pude trabalhar na área, to super enferrujado. vou tentar aqui.