Connexion à une base de données à chaque intervalle de temps

irann Messages postés 18 Date d'inscription mercredi 9 avril 2008 Statut Membre Dernière intervention 13 mai 2008 - 12 mai 2008 à 20:04
irann Messages postés 18 Date d'inscription mercredi 9 avril 2008 Statut Membre Dernière intervention 13 mai 2008 - 13 mai 2008 à 22:55
Bonjour à tous!

Salut !

je veus faire une connexion à la base de données à chaque intervale de temps (par exemple chaque 2 secondes).

j'ai une  procédure  dans  une classe Java:

 public void hist()
    {

// connexion à la base de données
       
        String url = new String("jdbc:mysql://localhost/base");// URL de connection

try {
Class.forName("com.mysql.jdbc.Driver");

}
catch(ClassNotFoundException e){
System.out.println("Driver introuvable");
return;
}

try {
 Connection  connect = DriverManager.getConnection(url, "root", "");
Statement select = connect.createStatement();
String query "SELECT c.nom, c.prenom, p.lat, p.long, v.type,p.heure,p.vitesse FROM chauffeur c, position p, voiture v WHERE v.numvoit p.numvoit AND c.chaufno = v.chaufno AND p.heure < '2008-03-11 08:00:00'
ResultSet result = select.executeQuery(query);

//quelques itérations qui utilisent les résultats de la connexion à la base
Gmaps gmap = (Gmaps)getFellow("gmap");

Gpolyline mypoly = new Gpolyline();

while(result.next()) {
String nom = result.getString(1);
String prenom = result.getString(2);
String lat1 = result.getString(3);
String longi1 = result.getString(4);
double lat = Double.parseDouble(lat1);
double longi = Double.parseDouble(longi1);
String voit = result.getString(5);
String date = result.getString(6);
String vitesse = result.getString(7);

       
      
Gmarker gmarker = new Gmarker("hgghgghg", lat, longi);
        mypoly.addPoint(lat, longi, 3);
      
       
        gmap.panTo(lat, longi);
        gmap.setZoom(16);
         
         
}

  mypoly.setParent(gmap);
 
select.close(); // Fermeture de la requête
}

catch(Exception e) {
System.out.println("Connection impossible ou erreur SQL");
e.printStackTrace();
}     
   
    }

DONC JE VEUS EXECUTER CETTE PROCEDURE CHAQUE 2 SECONDES;
donc,qu'est ce que je dois ajouter?

MERCI 
 

5 réponses

cs_Chatbour Messages postés 764 Date d'inscription jeudi 27 juillet 2006 Statut Membre Dernière intervention 6 septembre 2010 19
12 mai 2008 à 20:57
Salut,

utilises un thread ou un timer..
0
irann Messages postés 18 Date d'inscription mercredi 9 avril 2008 Statut Membre Dernière intervention 13 mai 2008
12 mai 2008 à 23:04
salut!
Tout d'abord,Merci

Comment j'ajoute un thread ou un timer.
Pardon, je suis un débutant.

Merci
0
cs_Chatbour Messages postés 764 Date d'inscription jeudi 27 juillet 2006 Statut Membre Dernière intervention 6 septembre 2010 19
13 mai 2008 à 09:03
Re,

voici un exemple avec un Timer :

import java.util.*;

class Tester {
    public static void main(String[] args) {
        TimerTask task = new TimerTask() {
            public void run() {
                System.out.println("Message");
            }
        };

        Timer timer = new Timer();
        timer.schedule(task, 0, 1000);   // affiche le message toute les secondes

    }
}





pour plus de détails, voir la javadoc : Timer, TimerTask..

Pour les threads, ça ne diffère pas beaucoup :

class Tester {
    public static void main(String[] args) {
        Thread thread = new Thread() {
            public void run() {
                while(true) {
                    System.out.println("Message");
                    try {
                        Thread.sleep(1000);
                    }
                    catch(InterruptedException e) {
                        e.printStackTrace();
                    }
                }
            }
        };
       
        thread.run();

    }
}

cordialement..
0
Twinuts Messages postés 5375 Date d'inscription dimanche 4 mai 2003 Statut Modérateur Dernière intervention 14 juin 2023 111
13 mai 2008 à 11:47
Salut,

tu avais déjà posée la question ICI ...

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

OoWORAoO
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
irann Messages postés 18 Date d'inscription mercredi 9 avril 2008 Statut Membre Dernière intervention 13 mai 2008
13 mai 2008 à 22:55
Merci Chatbour pour votre exemple
merci
0
Rejoignez-nous