IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JDBC Java Discussion :

[jdbc]impossible de se connecter


Sujet :

JDBC Java

  1. #1
    Membre chevronné
    Avatar de afrikha
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 600
    Points : 2 208
    Points
    2 208
    Par défaut [jdbc]impossible de se connecter
    voilà,j'essaye de me connecter à une BD MySQL
    voici mon code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    import java.sql.*;
     
    public class Test
    {
    	public static void main(String[] args)
    	{
    		Class.forName("com.mysql.jdbc.Driver").newInstance();
    		Connection con = DriverManager.getConnection("jdbc:mysql://localhost/menagerie" ,"root","mot de passe");
     
    	}
    }
    j'ai copié mysql-connector-java-3.1.12-bin.jar dans le dossier lib du jdk, et j'ai ajouté c:\jdk1.5\lib\mysql-connector-java-3.1.12-bin.jar au CLASSPATH.
    Mais quand je compile,j'obtiens
    unreported exception java.lang.ClassNotFoundException; must be caughtor declared to be thrown
    et ceci devant chaque parenthèse ouvrante de mes deux lignes.
    Je ne comprends rien là

    merci pour votre aide

  2. #2
    Membre chevronné
    Avatar de afrikha
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 600
    Points : 2 208
    Points
    2 208
    Par défaut
    Alors là,je crois que j'ai raté une étape importante dans mon apprentissage de java, en effet avec ce code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    import java.sql.*;
     
    public class Test
    {
    	public static void main(String[] args)
    	{
    		try
    		{
    		  Class.forName("com.mysql.jdbc.Driver").newInstance();
    		  System.out.println("Tout est OK");
    		}
    		catch (Exception E)
    		{
    		  System.out.println("Erreur de drivers JDBC");
    		}
    	}
    }
    j'ai le message: "tout est ok".
    quelqu'un peut m'expliquer pourquoi ce code-ci marche mais pas celui d'au dessus?

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 104
    Points : 140
    Points
    140

  4. #4
    Membre du Club
    Inscrit en
    Mars 2005
    Messages
    79
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Mars 2005
    Messages : 79
    Points : 59
    Points
    59
    Par défaut
    a mon avis, la connexion doit être "entourée" dun try catch...
    doù le post voir FAQ

  5. #5
    Membre chevronné
    Avatar de afrikha
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 600
    Points : 2 208
    Points
    2 208
    Par défaut
    Citation Envoyé par Niouts
    a mon avis, la connexion doit être "entourée" dun try catch...
    doù le post voir FAQ
    Apparemment oui, mais comme j'avais jamais entendu parler de cas où il fallait obligatoirement attraper l'exception, j'ai pas pensé que c'etait dù à cela.

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 104
    Points : 140
    Points
    140
    Par défaut
    Je vais me répéter, mais il faut vraiment lire la FAQ http://java.developpez.com/faq/java/?page=exception.
    Il n'y a JAMAIS obligation de rattraper une exception :
    • Une exception contrôlée (par exemple, ClassNotFoundException) doit être, soit rattrapée par un try catch dans le corps de la méthode, soit propagée par un throws dans la déclaration de la méthode.
    • Une exception non-contrôlée (par exemple, NullPointerException) doit être, soit rattrapée par un try catch dans le corps de la méthode, soit propagée explicitement par un throws dans la déclaration de la méthode, soit propagée implicitement sans throws dans la déclaration de la méthode.

    Pour la distinction entre exception contrôlée et exception non-contrôlée, voir le tutorial Java http://java.sun.com/docs/books/tutor...OrDeclare.html

  7. #7
    Membre chevronné
    Avatar de afrikha
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 600
    Points : 2 208
    Points
    2 208
    Par défaut
    D'accord mais ça ne résout pas mon problème.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
     
    import java.sql.*;
     
    public class Test
    {
    	Connection connection;
     
    	public Test()
    	{
    		try
    		{
    			Class.forName("com.mysql.jdbc.Driver");
    		}
    		catch (Exception e)
    		{
    			System.err.println("Unable to find and load driver");
    			System.exit(1);
    		}
    	}
    	public void connectToDB()
    	{
    		try
    		{
    			connection = DriverManager.getConnection
    			("jdbc:mysql://localhost/menagerie","nom utilisateur","mot de passe");
    		}
    		catch(SQLException e)
    		{
    			System.out.println("impossible de se connecter"+e.getMessage());
    		}
    	}
     
    	public static void main(String[] args)
    	{
    		Test hello = new Test(); 
    		hello.connectToDB();
    	}
    }
    j'ai le message:"impossible de connecter",suivi de java.net.ConnectException: connection refused: connect .

    ça veut dire quoi?

  8. #8
    Rédacteur
    Avatar de Hikage
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    1 177
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 177
    Points : 6 301
    Points
    6 301
    Par défaut
    1. Verifie que ton serveur mysql est bien lance.
    2. Qu'il ecoute sur le port par defaut ( 3306 si ma memoire est bonne ) dans le cas contraire => rajoute un ":2020" ou 2020 est le port d'ecoute, juste apres "localhost"
    3. Verifie que t'a pas un firewall qui bloque tout simplement le port 3306 ( ou autre si c'est pas par defaut )

  9. #9
    Membre chevronné
    Avatar de afrikha
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 600
    Points : 2 208
    Points
    2 208
    Par défaut
    Citation Envoyé par Hikage
    1. Verifie que ton serveur mysql est bien lance.
    comment je peux le verifier?
    2. Qu'il ecoute sur le port par defaut ( 3306 si ma memoire est bonne ) dans le cas contraire => rajoute un ":2020" ou 2020 est le port d'ecoute, juste apres "localhost"
    ça c'est bon
    3. Verifie que t'a pas un firewall qui bloque tout simplement le port 3306 ( ou autre si c'est pas par defaut )
    ok aussi.

    Merci de m'aider

  10. #10
    Membre chevronné
    Avatar de afrikha
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 600
    Points : 2 208
    Points
    2 208
    Par défaut
    problème résolu.
    c'était en fait mon serveur MySQL qui etait éteint.Bref rien à voir avec JDBC.
    Merci à tous pour votre aide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Debutant]Impossible de se connecter au serveur local
    Par Kenji dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 24/04/2005, 19h55
  2. [JDBC][Debutant]pb url connection avec driver thin
    Par remi_phbc dans le forum JDBC
    Réponses: 2
    Dernier message: 02/12/2004, 12h10
  3. [SERVLET][JDBC] Impossible de charger les pilotes
    Par cedric.picard dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 07/10/2004, 14h11
  4. Impossible de se connecter avec aMSN
    Par Blowih dans le forum Applications et environnements graphiques
    Réponses: 5
    Dernier message: 29/07/2004, 14h51
  5. [Connexion] impossible de se connecter autrement qu'en local
    Par sekiryou dans le forum Installation
    Réponses: 4
    Dernier message: 29/03/2004, 16h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo