Προς το περιεχόμενο

MySql- JDBC


elis88

Προτεινόμενες αναρτήσεις

Δημοσ.

Αντιμετοπείζω ένα πρόβλημα στην προσπάθεια μου να συνδεθώ σε βάση MySql μέσω java.

To μύνημα σφαλματός που πέρνω είναι:

java.lang.ClassNotFoundException: com.mysql.jdbc.Driver

 

Επίσης κατέβασα και τον Connector/j και τον έβαλά στο φάκελο της εφαρμογής. (Ετσι διάβασα κάπου ότι πρέπει να γείνει.) Το έβαλα επίσησ και στο CLASSPATH .

 

Ο κωδικάς είναι ο παρακατώ:

 

>
public class Controll 
{
   private Connection con;
   
   public Controll(String con_string, String userid, String password)
   {
       con = getConnection(con_string, userid, password);
   }
   
   
   
   
   private  Connection getConnection(String con_string, String userid, String password)
   {
       try
       {
           Class.forName("com.mysql.jdbc.Driver").newInstance();
           Connection conn = DriverManager.getConnection(con_string, userid, password);
           System.out.println("Connected with databse");
           
           return conn;
       }
       catch(Exception e)
       {
           System.out.println("Error: "+e);
       }
       
       return null;
   }
   

}

 

Main:

>
Controll contr = new Controll("jdbc:mysql://localhost/lyrics", "username", "password");

Δημοσ.

Το μήνυμα που παίρνεις σημαίνει ότι το JVM δεν μπορεί να βρει το class του jdbc driver στο CLASSPATH.

 

Το πρόγραμμά σου το τρέχεις από command line ή από κάποιο IDE; Μπορείς να μας στείλεις και πώς θέτεις το CLASSPATH; Ο κώδικάς σου είναι (ας πούμε) στο C:\MyProjects\JDBCConnect και εκεί μέσα έρχεις ρίξει και τα JARs του JDBC driver;

Δημοσ.

Ευχαριστώ vag_pRiMi για το ενδιαφέρον σου.

Τελικά το ελήσα το πρόβλημα. Στο netbeans έχει καπου μια επιλογή που φορτώνεις jar. Το φόρτωσα και όλα δούλεψαν ρολόι. Αν δεν είχα netbeans όμως πως θα μπορούσε να διορθωθεί;

 

Εγώ έβαλα το jar μέσα στο φάκελο του project. Επίσης πήγα MyComputer και στις μεταβλητες περιβάλλοντος άλαξα το path και πρόσθεσα το path που οδηγει στο φάκελο που ειναι το jar .

Δημοσ.

Τα jars δεν τα βάζεις στο PATH αλλά στο CLASSPATH. Αν ήθελες να το τρέξεις από command line τότε ή θα έφτιαχνες μια μεταβλητή περιβάλλοντος CLASSPATH η οποία θα περιείχε τα paths προς τα JARs ή τα class folders ή θα έγραφες τα εξης:

 

java -classpath %CLASSPATH%;.;C:\MyProjects\JDBCConnect\mysqljdbc.jar TheClassYouWantToRun

 

:-)

HTH

Δημοσ.

Επειοδή τώρα αντιμετοπίζω πρόβλημα όταν τρέχω το Applet από .html. Πως το διορθώνω;

Υπάρχει τρόπος να ορίσω το classpath στην HTML σελίδα;

Δημοσ.

Δεν ορίζεις το CLASSPATH στην HTML, αλλά περνάς τις παραμέτρους απ'ευθείας στο JVM που θα ξεκινήσει για να τρέξει το Applet σου:

 

appletviewer -J-classpath -J%CLASSPATH%;.;C:\MyProjects\JDBCConnect\mysqljdbc.jar file:///FullPathToTheClassYouWantToRun

 

 

Κάτι δεν μου κολλάει στην λογική σου όμως. Έχεις ένα Applet που τρέχει client side και χτυπάει μια βάση. Η βάση αυτή όμως θα βρίσκεται στο PC του client; Μην παρασύρεσαι από το γεγονός ότι ως developer τώρα βλέπεις και τον client και τον server

.

Δημοσ.

Ναι γμτ, το είχα τελειώσει σε java. Και τώρα πρέπει να το κάνω απο την αρχή σε php :mad:

Δημοσ.

1)C:\Program Files\Java\jre1.6.0_05\lib\ext

2)C:\Program Files\Java\jdk1.6.0_05\jre\lib\ext

σε αυτούς τους καταλόγους μέσα πρέπει να βάλεις

π.χ. to mysql-connector-java-5.1.5-bin.jar

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...