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

 Java Discussion :

Récupérer des données pour les stocker


Sujet :

Java

  1. #41
    Membre confirmé Avatar de Alex1407
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2013
    Messages
    166
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2013
    Messages : 166
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ps : null
    java.lang.NullPointerException
    textfield_1 :89
    at Vue.carburant$2.actionPerformed(carburant.java:130)
    voila ce que j'ai et lorsque je double clic sur carburant.java:130 il me montre cette ligne de code.sa serais cette ligne qui poserais problème ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ps=Connexion.getConnection().prepareStatement("insert into carburant (type_carburant,volume,releve_km,montant_plein) values (?, ?, ?, ?)");
    PS : sans vouloir te donner l'impression que tu es complètement dépassé, ce programme que tu fais est archi simple.
    la programmation c'est un peu comme tout : rien n'est acquis au départ, même si certains peuvent avoir plus d’aisance que d'autres, et tout s'acquière à force d'apprentissage, d'étude, d'essais, de tentatives, d'erreurs, d'expérience et de persévérance. L'entraînement, toujours l'entraînement, jusqu’à ce qui te semble complexe aujourd'hui devienne du réflexe inconscient plus tard...
    J'ai conscience que je suis dépasser , je manque de pratique , pendant les cours on doit se débrouiller pour que sa marche ........C'est a force d'essayer et peut être que la logique viendra ....

    Merci beaucoup

  2. #42
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Billets dans le blog
    2
    Par défaut
    Y'a un premier truc que je pige pas, c'est que j'avais nommé la méthode get()...et pas getConnection() tu as renommé la méthode, ou c'est une autre méthode ?


    tu affiches bien ps après ta ligne suivante ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ps=Connexion.getConnection().prepareStatement("insert into carburant (type_carburant,volume,releve_km,montant_plein) values (?, ?, ?, ?)");
    Ou avant ?


    Je dirais avant à priori puisque qu'on voit ps=null dans le log, et que tu as une erreur sur cette ligne. Evidemment, pour connaitre le résultat d'une affectation, c'est après qu'il faut afficher la variable !

    Mais bon, soit, si l'erreur à lieu sur cette ligne, c'est donc que getConnection() retourne null...

    Je le ferais en debug personnellement : si tu sais comment procéder, fait le, et tu détermineras ce qu'il se passe.

    Mais sans debug, tu peux ajouter une trace ici pour vérifier (enfin dans la méthode getConnection() si tu la renommée ) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    public static synchronized Connection get() throws SQLException {
               if ( connection!=null && !connection.isClosed() ) {
                   return connection;
               }         
               connection = createConnection();
               System.out.println("connexion : "+connection);
               return connection;
        }
    Si ça t'affiche
    connexion : null
    c'est que createConnection() retourne null.

    Dans ce cas, il faut regarder dans la méthode createConnection(), en ajoutant un System.out.println("on passe là") juste avant le return null :
    Si ça affiche "on passe là", c'est qu'il y a une erreur quelque part et qu'on devrait avoir dans la console "erreur de driver"
    Si ça affiche pas "on passe là", c'est que c'est DriverManager qui ne renvoit pas de connexion, ce qui serait étonnant, mais bon, voyons ce que ça donne...
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  3. #43
    Membre confirmé Avatar de Alex1407
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2013
    Messages
    166
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2013
    Messages : 166
    Par défaut
    non j'ai pas renommer la methode mais eclipse me le prend pas donc il ma proposer getConnection comme correction du problème.

    Lorsque je veut afficher ps après :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ps=Connexion.getConnection().prepareStatement("insert into carburant (type_carburant,volume,releve_km,montant_plein) values (?, ?, ?, ?)");
    il me l'affiche pas il met toujours les erreurs.

    ce code je doit le mettre ou :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    public static synchronized Connection get() throws SQLException {
               if ( connection!=null && !connection.isClosed() ) {
                   return connection;
               }         
               connection = createConnection();
               System.out.println("connexion : "+connection);
               return connection;
        }
    Je remet mon fichier au format zip afin que vous puissiez voir par vous meme

    merci beaucoup
    Fichiers attachés Fichiers attachés

  4. #44
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Billets dans le blog
    2
    Par défaut
    Quand je fais référence à du code, c'est à du code que j'ai posté moi, pas à celui que d'autres t'ont proposé et dont j'ai dit que ce n'était pas une bonne idée. Comment veux-tu que je devine que tu n'as pas suivi mes indications, en particulier suite à un de mes messages, et que tu dis que ça ne marche pas...

    Voilà la classe Connexion que j'ai trouvée dans le zip que tu viens de poster (avec un peu de réindentation) :
    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
    39
    40
    41
    42
    public class Connexion{
     
       private static Connection cn; // une variable statique pour stocker la connexion
     
       /**
        * Une méthode statique pour aller cherche la connexion
        */
       public static  Connection getConnection() {
          return cn;
       }
     
       public static void main (String[] args) {
          try {
     
             Class.forName("java.sql.Connection");
     
              String url = "jdbc:mysql://localhost/vehicules";
              String user = "root";
              String passwd = "";
     
              cn = DriverManager.getConnection(url, user, passwd);
     
     
          } catch(ClassNotFoundException e) {
    	   System.out.println("erreur de driver");
          } catch(SQLException e) {
    	   System.out.println("erreur de la data base !!");
     
        /**
          * NE PAS OUBLIER D'APPELER CETTE METHODE A LA FIN DU PROGRAMME POUR FERMER LA CONNEXION
          
        public static void close() throws SQLException {
              if ( connection!=null && !((java.sql.Connection) connection).isClosed() ) {
                   Connexion.close();
               }
        } */
     
         }
     
       }
     
    }
    Plus grand chose à voir avec mon exemple Et forcément cn est null, si tu n'appelles jamais main... C'est quand même dommage de se dire que ton code marcherait depuis 1 ou 2 jours si tu avais utilisé mon exemple, au lieu de mélanger plusieurs exemples entre eux
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  5. #45
    Membre confirmé Avatar de Alex1407
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2013
    Messages
    166
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2013
    Messages : 166
    Par défaut
    Je n'ai pas demander d'aide a d'autre personne , j'ai toujours utiliser le code que vous m'avez expliquer ! vous avez été le seul a m'aider tout au long de ce post. il me sembler bizarre aussi le main ! et puis je comprend plus rien a force. ce que je trouver simple devient hyper compliquer.
    désoler d'avoir fait cette erreur idiote . Comment je doit appeler le main alors ?

    Merci beaucoup pour votre aide

  6. #46
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Billets dans le blog
    2
    Par défaut
    Tu devrais relire la discussion depuis le début alors (en particulier le post 23 et comparer les deux classes Connexion)

    Dans le post 23, je te donne un exemple de classe Connexion, qui fonctionne, et dans le post 33, suite au post 32 (pas de moi donc), tu présentes déjà une version altérée de ma classe, pour laquelle je te donne ensuite la correction. Et au lieu de l'appliquer, on se retrouve avec encore autre chose, une sorte de mix entre ma classe et la solution proposée au post 32.

    Citation Envoyé par Alex1407 Voir le message
    Comment je doit appeler le main alors ?
    Il n'y a pas de main à appeler : tu prends le source de ma classe Connexion du post 32, et tu fais, comme je le dis depuis hier :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ps = db.Connexion.get().preparedStatement(....
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  7. #47
    Membre confirmé Avatar de Alex1407
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2013
    Messages
    166
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2013
    Messages : 166
    Par défaut
    j'ai relus toute la discussion au poste 21 c’était

    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
    39
    40
    public class Connection {
     
        private static Connection connection;
     
        private Connection createConnection() throws SQLException {
    try {
     
    		Class.forName("com.mysql.jdbc.Driver");
     
    		String url = "jdbc:mysql://localhost/vehicules";
    		String user = "root";
    		String passwd = "";
     
    	      return DriverManager.getConnection(url, user, passwd);
     
     
    	}catch(ClassNotFoundException e) {
    		System.out.println("erreur de driver");
    	} 
            return null;
        }
     
        public static synchronized Connection get() throws SQLException {
               if ( connection!=null && !connection.isClosed() ) {
                   return connection;
               }         
               connection = createConnection();
               return connection;
        }
     
        /**
          * NE PAS OUBLIER D'OUBLIER D'APPELER CETTE METHODE A LA FIN DU PROGRAMME POUR FERMER LA CONNEXION
          */
        public static void close() throws SQLException {
              if ( connection!=null && !connection.isClosed() ) {
                   connection.close();
               }
        }
     
    }
    j’étais rester sur sa .

    j'ai tellement changer le code peut être que je n'ai pas fait attention en supprimant des partis du code. En tout cas désoler de vous avoir fait perdre votre temps sur quelque chose qui vous parez si facile et qui coule de source pour vous .

    Merci pour vos conseil tout au long de ce post et pour votre aide bonne continuation

  8. #48
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Billets dans le blog
    2
    Par défaut
    J'ai pas ça au post 21 : au post 21, c'est la proposition que j'ai fait à partir de ta classe d'origine, mais on a à changé après, déjà à cause de la méthode main().

    Bref, voici la classe à utiliser au final :

    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
    39
    40
    41
    42
    43
    44
    45
    46
    47
     
    package db;
     
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.SQLException;
     
    public class Connexion {
     
        private static Connection connection;
     
        private static Connection createConnection() throws SQLException {
    try {
     
    		Class.forName("com.mysql.jdbc.Driver");
     
    		String url = "jdbc:mysql://localhost/vehicules";
    		String user = "root";
    		String passwd = "";
     
    	      return DriverManager.getConnection(url, user, passwd);
     
     
    	}catch(ClassNotFoundException e) {
    		System.out.println("erreur de driver");
    	} 
            return null;
        }
     
        public static synchronized Connection get() throws SQLException {
               if ( connection!=null && !connection.isClosed() ) {
                   return connection;
               }         
               connection = createConnection();
               return connection;
        }
     
        /**
          * NE PAS OUBLIER D'OUBLIER D'APPELER CETTE METHODE A LA FIN DU PROGRAMME POUR FERMER LA CONNEXION
          */
        public static void close() throws SQLException {
              if ( connection!=null && !connection.isClosed() ) {
                   connection.close();
               }
        }
     
    }
    Et tu l'appelles comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ps = db.Connexion.get().preparedStatement(...
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  9. #49
    Membre confirmé Avatar de Alex1407
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2013
    Messages
    166
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2013
    Messages : 166
    Par défaut
    Merci j'ai revu mon programme , tout fonctionne désormais je n'ai plus d'erreur mon insertion dans ma base de données c'est correctement réaliser.

    Merci beaucoup pour votre aide tout au long de ce post Joel drigo et désoler pour cette erreur de ma part.Bonne continuation

  10. #50
    Modérateur
    Avatar de MasterMbg
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2011
    Messages
    719
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2011
    Messages : 719
    Par défaut
    Citation Envoyé par Alex1407 Voir le message
    Merci j'ai revu mon programme , tout fonctionne désormais je n'ai plus d'erreur mon insertion dans ma base de données c'est correctement réaliser.

    Merci beaucoup pour votre aide tout au long de ce post Joel drigo et désoler pour cette erreur de ma part.Bonne continuation
    Bjr, tu as trouvé solution à ton problème, alors peux tu marquer résolue ta discussion?
    Plus tu apprends sérieusement, plus tu te rapproches d'un savoir noble. Une chose est certaine, les difficultés ne s'écarteront de ton chemin...

    Tu es nouveau dans le développement Android, la page des COURS est là pour te faciliter la vie
    Tu peux trouver la réponse à ta question dans la FAQ
    Retrouvez mon tutoriel sur la consommation des services web SOAP
    Pense à voter positivement en appuyant sur en bas à droite de la réponse qui t'a donné une piste de solution.

+ Répondre à la discussion
Cette discussion est résolue.
Page 3 sur 3 PremièrePremière 123

Discussions similaires

  1. Récupérer des données pour les insérer dans un schéma "radar"
    Par Onex3891 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 11/10/2013, 18h45
  2. Réponses: 4
    Dernier message: 20/06/2009, 11h26
  3. [MySQL] Récupérer des données avec les SESSIONS
    Par dylanms dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 18/04/2009, 11h00
  4. Récupérer des données et les sauvegarder en *.txt
    Par littlepierre dans le forum Interfaces Graphiques
    Réponses: 31
    Dernier message: 17/03/2008, 12h56
  5. Réponses: 4
    Dernier message: 03/01/2008, 12h37

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