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 :

Ligne de commande DOS connection MySQL


Sujet :

JDBC Java

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    327
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 327
    Points : 204
    Points
    204
    Par défaut Ligne de commande DOS connection MySQL
    Voilà,j'apprends java et j'en suis à java/mysql

    J'ai fais un petit programme qui se connecte à la base MySQL

    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
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    import java.util.*;
    import java.sql.*;
    class C
    {
     
    public static void main(String [] arg){
     
     
    DataBase objetCnx = new DataBase();
     
     
     
     
     
    }
     
     
    }
     
     
    class DataBase
    {
    	Connection connection = null;
     
     
        public DataBase() {
     
              connexion () ;
     
        }	
     
     
    	// Connexion à la base de donnees
    	private void connexion () 
    	{
    		try
            {
    			// Chargement des drivers SQL
    			Class.forName ("com.mysql.jdbc.Driver").newInstance();
    		}
    		catch (ClassNotFoundException a)
    		{
    			System.out.println ("Driver non trouve");
    		}
    		catch (Exception b)
    		{      
    			System.out.println ("Problème sur chargement de driver JDBC");			
    		}
     
    		try
            {		
    			// Etablissement de la connexion avec la base
    			connection = DriverManager.getConnection ("jdbc:mysql://localhost/Table/", "root", "");
    		}
    		catch (SQLException c)
    		{	
    			System.out.println ("Connexion refuse ou base inconnu");
    		}
    		catch (Exception d)
    		{
    			System.out.println ("Problème sur connexion");		
    		}
    	}
    	}
    Mon soucis est le suivant c'est de trouver la bonne ligne de commande DOS

    mon programme C.java est dans mon répertoire C:\Program Files\Java\jdk1.6.0_07\bin
    je suis directement dans le repertoire du JDK
    cd C:\Program Files\Java\jdk1.6.0_07\bin
    javac C
    et là ça compile
    dans ce répertoire j'ai mon fichier mysql-connector-java-5.1.6-bin.jar
    que j'ai dézipé histoire de voir si tout est en place
    dans la variable d'environnement Classpath j'ai mis
    C:\Program Files\Java\jdk1.6.0_07\bin\mysql-connector-java-5.1.6-bin.jar

    Donc ma question est simple je voudrais exécuter mon fichier :ma classe C et le driver et me connecter à ma base
    Quelle est donc la bonne ligne de commande ?
    merci

  2. #2
    Expert éminent sénior Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    Avril 2002
    Messages
    4 562
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Tourneur Fraiseur

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 562
    Points : 15 493
    Points
    15 493
    Par défaut
    Il faut arrêter de parler de DOS, plus personne ne l'utilise depuis plus de 10 ans. Ce n'est pas parce qu'on a une invite de commande que l'on est sous DOS. D'ailleurs, il n'existe pas de JVM qui fonctionne sous DOS.

    Ensuite, ce n'est pas une bonne idée de se placer directement dans le répertoire bin du JDK. Tu devrais l'ajouter le répertoire bin du JDK à ta variable d'environnement PATH.
    Ainsi tu pourras exécuter javac depuis n'importe quel répertoire. Cela t'évite de mélanger tes fichiers et ceux de JDK.

    Si le jar est dans la variable d'environnement CLASSPATH: java C devrait suffire.
    Sinon java -cp x:\Chemin\mysql-connector-java-5.1.6-bin.jar C

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    327
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 327
    Points : 204
    Points
    204
    Par défaut
    Merci
    c'est un DOS virtuel en fait non?
    une émulation
    je vais l'ajouter au path sinon

    Sinon voici le résultat ça ne marche pas
    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
    C:\Program Files\Java\jdk1.6.0_07\bin>java -cp C:\Program Files\Java\jdk1.6.0_07
    \bin\mysql-connector-java-5.1.6-bin.jar C
    Exception in thread "main" java.lang.NoClassDefFoundError: Files\Java\jdk1/6/0_0
    7\bin\mysql-connector-java-5/1/6-bin/jar
    Caused by: java.lang.ClassNotFoundException: Files\Java\jdk1.6.0_07\bin\mysql-co
    nnector-java-5.1.6-bin.jar
            at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
            at java.security.AccessController.doPrivileged(Native Method)
            at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
            at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
            at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
     
    C:\Program Files\Java\jdk1.6.0_07\bin>
    CLASSPATH =C:\Program Files\Java\jdk1.6.0_07\bin\mysql-connector-java-5.1.6-bin.jar

    Le commande java C donne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Driver non trouve
    Connexion refuse ou base inconnu
    ce qui prouve que mon jar n'est pas trouvé

  4. #4
    Expert éminent sénior Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    Avril 2002
    Messages
    4 562
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Tourneur Fraiseur

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 562
    Points : 15 493
    Points
    15 493
    Par défaut
    C'est juste une ligne de commande Windows.
    Le MS-DOS, n'existe plus depuis Windows 95 et même le mode de compatibilité DOS, n'existe plus depuis Windows 2000/XP.

  5. #5
    Expert éminent sénior Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    Avril 2002
    Messages
    4 562
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Tourneur Fraiseur

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 562
    Points : 15 493
    Points
    15 493
    Par défaut
    Le chemin de ton fichier contenant des espaces, il faut le mettre entre guillemets.

  6. #6
    Membre actif
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    327
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 327
    Points : 204
    Points
    204
    Par défaut
    Merci
    je progresse maintenant j'ai un problème de chemin
    ce qui est logique 2 bin dans le chemin d'accès ??
    et un problème de commande
    je suis jamais doué avec ce genre de chose

    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
    48
    49
    50
    51
    52
    53
    54
    55
    C:\Program Files\Java\jdk1.6.0_07\bin>java -cp "C:\Program Files\Java\jdk1.6.0_0
    7
    Usage: java [-options] class [args...]
               (to execute a class)
       or  java [-options] -jar jarfile [args...]
               (to execute a jar file)
     
    where options include:
        -client       to select the "client" VM
        -server       to select the "server" VM
        -hotspot      is a synonym for the "client" VM  [deprecated]
                      The default VM is client.
     
        -cp <class search path of directories and zip/jar files>
        -classpath <class search path of directories and zip/jar files>
                      A ; separated list of directories, JAR archives,
                      and ZIP archives to search for class files.
        -D<name>=<value>
                      set a system property
        -verbose[:class|gc|jni]
                      enable verbose output
        -version      print product version and exit
        -version:<value>
                      require the specified version to run
        -showversion  print product version and continue
        -jre-restrict-search | -jre-no-restrict-search
                      include/exclude user private JREs in the version search
        -? -help      print this help message
        -X            print help on non-standard options
        -ea[:<packagename>...|:<classname>]
        -enableassertions[:<packagename>...|:<classname>]
                      enable assertions
        -da[:<packagename>...|:<classname>]
        -disableassertions[:<packagename>...|:<classname>]
                      disable assertions
        -esa | -enablesystemassertions
                      enable system assertions
        -dsa | -disablesystemassertions
                      disable system assertions
        -agentlib:<libname>[=<options>]
                      load native agent library <libname>, e.g. -agentlib:hprof
                        see also, -agentlib:jdwp=help and -agentlib:hprof=help
        -agentpath:<pathname>[=<options>]
                      load native agent library by full pathname
        -javaagent:<jarpath>[=<options>]
                      load Java programming language agent, see java.lang.instrument
     
        -splash:<imagepath>
                      show splash screen with specified image
     
    C:\Program Files\Java\jdk1.6.0_07\bin>\bin\mysql-connector-java-5.1.6-bin.jar" C
     
    Le chemin d'accès spécifié est introuvable.
     
    C:\Program Files\Java\jdk1.6.0_07\bin>

  7. #7
    Membre actif
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    327
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 327
    Points : 204
    Points
    204
    Par défaut
    Bon j'ai réglé ce problème de Driver
    avec cette commande
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    java -classpath "C:\javAp";"C:\javDriver\mysql-connector-java-5.1.6-bin.jar" C
    le driver se charge
    mais je ne parviens pas à me connecter
    J'ai créé une base de test avec easyphp comme ça j'ai phpmyadmin
    le soucis c'est l'URL de DriverManager.getConnection
    mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    try
            {		
    			// Etablissement de la connexion avec la base
    			String url = "jdbc:mysql://localhost:3306/test";
    			connection = DriverManager.getConnection (url,"root","");
    		}
    		catch (SQLException c)
    		{	
    			System.out.println ("Connexion refuse ou base inconnu");
    		}
    j'ai essayé localhost/mabase etc
    easyPhp est dans C:\programe file\ à titre d'info
    Merci de m'aider

  8. #8
    Membre actif
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    327
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 327
    Points : 204
    Points
    204
    Par défaut
    je suis pas trés doué mais c'est clair qu'un langage comme PHP qui est mon "langage natif" a de beau jour devant lui
    un debutant se connecte par script en 10 mn
    même avec .NET et C# j'ai eu moins de problème
    enfin ça marche
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String url = "jdbc:mysql://localhost:3306/Table";
    mais c'est clair que sur ce coup là je suis plutot mauvais et java c'est un super langage

  9. #9
    Expert éminent sénior Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    Avril 2002
    Messages
    4 562
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Tourneur Fraiseur

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 562
    Points : 15 493
    Points
    15 493
    Par défaut
    Disons que si tu galères moins en PHP au tout début, c'est surtout parce qu'il y a des solutions clé en main du style EasyPHP, ou Wamp qui font que tout est déjà préconfiguré.
    Si tu devait installer et configurer toi même Apache, PHP et MySQL je suis sur que tu trouverais Java d'un facilité déconcertante.

  10. #10
    Membre actif
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    327
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 327
    Points : 204
    Points
    204
    Par défaut
    c'est vrai que si j'avais du installer un wamp au debut ça aurait été une sacré galere.Depuis,j'en ai installé un .
    PHP est plus facile pour les débutant,mais c'est une erreur d'apprendre la prog avec ce langage non typé
    on peut bidouillé un script qui va fonctionner mais il ne sera pas maintenable
    la facilité de php fait sa faiblesse
    je suis passé de php à java je croyais etre un bon devellopeur
    mais j'ai tout réappris avec java qui est avec c# un grand langage
    avec java on est obligé d'être rigoureux et la richesse de l'api est incomparable
    de plus c'est un langage événementiel client serveur
    certe développer en php est plus rapide moins chère
    mais quand on aime la prog on aime java
    php est une petite voiture sympa avec vitesse automatique
    java est une ferrari
    je continue à maintenir des aplis en php
    mais pour rien au monde je ne reviendrai à php
    Avec java j'ai découvert un autre monde
    rien que la class swing c'est un truc que php n'a pas
    php est un langage "templates" basé sur c en fait
    De plus statistiquement les devellopeur php sur de gros projets sont largués
    et quand je vois la richesse de java les classes anonyme générique etc etc
    le cast décidément quelle puissance

  11. #11
    Nouveau Candidat au Club
    Inscrit en
    Décembre 2007
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 1
    Points : 1
    Points
    1
    Par défaut php ou java
    Bonjour à tous,
    j'ai vécu la même expérience avec la programmation.
    c'est magnifique ce que tu pense envers le langage de programmation java.
    Mais, enfait, tu parle d'une technologie entière liée au java et non pas simplement du codage java.

    personnellement, j'utilise les deux en même temps.
    je travaille (mis temps) comme développeur web utilisant principalement php .
    et je suis membre dans un laboratoire de recherche et j'utilise le java dans mon projet biensure parmi d'autre langage.

    Bref, je vois chaqu'un d'une manière différente.

    Merci pour cette discussion et vos interventions tous.

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

Discussions similaires

  1. Connecter et réalisé une requête en ligne de commande dos
    Par arnaudperfect dans le forum Administration
    Réponses: 1
    Dernier message: 27/11/2008, 14h49
  2. Ligne de commande dos pour telnet
    Par super_boulet dans le forum Administration
    Réponses: 8
    Dernier message: 18/12/2006, 10h56
  3. Exécuter une ligne de commande dos
    Par koKoTis dans le forum Général JavaScript
    Réponses: 13
    Dernier message: 20/08/2006, 07h03
  4. Réponses: 1
    Dernier message: 26/07/2006, 11h23
  5. Execution de ligne de commande DOS
    Par Chap$ dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 03/02/2006, 12h12

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