Connexion d'une base de donnée a eclipse [Résolu]

Messages postés
10
Date d'inscription
vendredi 20 juin 2008
Statut
Membre
Dernière intervention
4 novembre 2008
- - Dernière réponse : natijach
Messages postés
2
Date d'inscription
jeudi 2 décembre 2010
Statut
Membre
Dernière intervention
1 juin 2012
- 1 juin 2012 à 22:48
 
Salut tout le monde!
j'ai un problème de connexion de ma base de données avec éclipse.j'espère bien que quelqu'un pourrait m'aider à le résoudre .En faite j'arrive a charger le driver JDBC mais je n'arrive pas a faire la connexion.voici mon code

      package bf.finances.referentiel.prototype.mod2.dao;

          import java.sql.DriverManager;
          import java.sql.PreparedStatement;
          import java.sql.ResultSet;
          import java.util.Properties;

          /**
           * Gere les connexion à la base de données
           *
           *
           *
           */
          public class Connexion {
              private java.sql.Connection dbConn = null;
              private String nomDirver ;
              private String url;
              private String utilisateur;
              private String motDePasse;

              /**
               * crée une instance de la classe
               *
               */
              public Connexion() {
                 
              }

              /**
               * intialise les paramètres de connexion
               * à la BD
               */
              public void init(){
                  //Objet pour lire le fichier properties
                  Properties  props = new Properties();
                 
                  try {
                  //Lecture du fichier properties
                  java.io.InputStream input = Connexion.class.getResourceAsStream("properties.txt");
                  //Chargement dans l'objet Properties
                  props.load(input);
                 
                  this.utilisateur =  props.getProperty("user.name");
                  this.motDePasse = props.getProperty("user.password");
                  this.url = props.getProperty("driver.url");
                  this.nomDirver = props.getProperty("driver.class");
                  props.clone();
                  input.close();

                  }catch(Exception  e) {
                      System.out.println("Erreur lors de la lecture du fichier properties "+e);
                  }
                 
              }
             
              /**
               * se connecte à la base de données
               *
               * @return true si la connexion a réussi, sonon retourne false
               */
              public boolean connect() {

                  // Chargement du driver du SGBD (Oracle par exemple)
                  try {
                      Class.forName(this.nomDirver);
                  } catch (Exception e) {
                      System.err.println("ECHEC DE CHARGEMENT DU DRIVER DU SGBD "    + e.toString());
                      return false;
                  }

                  System.out.println("Driver chargé  ");
                 
                  // Connexion à la base de données
                  try {
                      dbConn = DriverManager.getConnection(this.url, this.utilisateur, this.motDePasse);
                  } catch (Exception e) {
                      System.err.println("ECHEC DE CONNEXION AU SGBD " + e.toString());
                      return false;
                  }
                  System.out.println(" Dirver chargé, connection à la BD effectuée");
                  // Tout s'est bien passé
                  return true;

              }

              /**
               * se deconnecte à la base de données
               *
               * @return true si la desconnexion a réussi, sonon retourne false
               */
              public boolean disconnect() {
                  try {
                      // fermeture de la connexion
                      dbConn.close();
                  } catch (Exception e) {
                      System.err.println("ECHEC LORS DE LA FERMETURE DE LA CONNEXION "
                              + e.toString());
                      return false;
                  }
                  // System.out.println("Deconnecté");
                  // Fermeture ok
                  return true;
              }

              /**
               * Retourne un objet de type java.sql.Connection qui permettra d'accéder à
               * la BD (exécution de requête, lecture du schéma)
               *
               * @return
java.sql.Connection

               */
              public java.sql.Connection getDbConn() {
                  return dbConn;
              }

              public void setDbConn(java.sql.Connection dbConn) {
                  this.dbConn = dbConn;
              }
             
              /**
               * methode de test de la classe
               */
              public static void main(String[] argument) {
                  Connexion connexion = new Connexion();
                  connexion.init();
                  connexion.connect();
                 
                  //Exemple de request SQL
                  try {
                  PreparedStatement stament = connexion.getDbConn().prepareStatement("Select * from ref_pays");
                  ResultSet resultat = stament.executeQuery();
                  while (resultat.next()){
                      System.out.print("CODE PAYS = " + resultat.getString("CODE_PAYS"));
                      System.out.print(", NOM PAYS = " + resultat.getString("NOM_PAYS"));
                      System.out.println();
                  }
                 
                  stament = connexion.getDbConn().prepareStatement("insert into ref_pays values(?, ?, ?, ?)");
                  stament.setString(1, "CV");
                  stament.setString(2, "CC");
                  stament.setString(3, "CCC");
                  stament.setString(4, "213");

                  int nbreLigne = stament.executeUpdate();
                  System.out.println(nbreLigne + " insérée(s)");
                 
                  }catch(Exception e) {
                      System.err.print("Erreur Connexion.main " + e);
                  }
                 
                  connexion.disconnect();

              }

          }

Et voici le message d'erreur:

Driver chargé 
ECHEC DE CONNEXION AU SGBD   java.sql.SQLException: Exception d'E/S: The Network Adapter could not establish the connection
Erreur Connexion.main java.lang.NullPointerException   ECHEC LORS DE LA FERMETURE DE LA CONNEXION java.lang.NullPointerException
Afficher la suite 

4 réponses

Meilleure réponse
Messages postés
48
Date d'inscription
vendredi 31 août 2007
Statut
Membre
Dernière intervention
12 février 2009
3
Merci
Bonjour,
Apparemment tu recupere pas les bonnes valeur a partir du fichier properties.txt

Bon courage

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 193 internautes nous ont dit merci ce mois-ci

Commenter la réponse de jiidou
Messages postés
10
Date d'inscription
vendredi 20 juin 2008
Statut
Membre
Dernière intervention
4 novembre 2008
0
Merci
oui c'est vrai!!!je viens de m'en rendre compte.Merci beaucoup jiidou!!!
Commenter la réponse de zitiba
Messages postés
4
Date d'inscription
vendredi 5 octobre 2007
Statut
Membre
Dernière intervention
16 mars 2009
0
Merci
Salut,
essaye aves ça :

Oracle :
"jdbc:oracle:thin:@localhost:1521:XE" ; (personnalise ta base 1521:num de port et XE:10g Xedition .... se sont des parametre à modifier selon la base...).
MySQL:
 "jdbc:mysql:///test"

Driver à charger :

Oracle :
"oracle.jdbc.driver.OracleDriver"

MySQL :
"com.mysql.jdbc.Driver"

PS si tu va utiliser Oracle, télécharge le OJDBC14.jar depuis le site d'oracle. Et ajoute le à la librairie.

Bonne chance.

Bazdig25
Commenter la réponse de bazdig25
Messages postés
2
Date d'inscription
jeudi 2 décembre 2010
Statut
Membre
Dernière intervention
1 juin 2012
0
Merci
Est ce qu'on peut faire la connexion à une base de données Access avec Eclipse?
Commenter la réponse de natijach