elis88 Δημοσ. 11 Μαΐου 2009 Δημοσ. 11 Μαΐου 2009 Αντιμετοπείζω ένα πρόβλημα στην προσπάθεια μου να συνδεθώ σε βάση 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");
vag_pRiMi Δημοσ. 11 Μαΐου 2009 Δημοσ. 11 Μαΐου 2009 Το μήνυμα που παίρνεις σημαίνει ότι το JVM δεν μπορεί να βρει το class του jdbc driver στο CLASSPATH. Το πρόγραμμά σου το τρέχεις από command line ή από κάποιο IDE; Μπορείς να μας στείλεις και πώς θέτεις το CLASSPATH; Ο κώδικάς σου είναι (ας πούμε) στο C:\MyProjects\JDBCConnect και εκεί μέσα έρχεις ρίξει και τα JARs του JDBC driver;
elis88 Δημοσ. 11 Μαΐου 2009 Μέλος Δημοσ. 11 Μαΐου 2009 Ευχαριστώ vag_pRiMi για το ενδιαφέρον σου. Τελικά το ελήσα το πρόβλημα. Στο netbeans έχει καπου μια επιλογή που φορτώνεις jar. Το φόρτωσα και όλα δούλεψαν ρολόι. Αν δεν είχα netbeans όμως πως θα μπορούσε να διορθωθεί; Εγώ έβαλα το jar μέσα στο φάκελο του project. Επίσης πήγα MyComputer και στις μεταβλητες περιβάλλοντος άλαξα το path και πρόσθεσα το path που οδηγει στο φάκελο που ειναι το jar .
vag_pRiMi Δημοσ. 11 Μαΐου 2009 Δημοσ. 11 Μαΐου 2009 Τα jars δεν τα βάζεις στο PATH αλλά στο CLASSPATH. Αν ήθελες να το τρέξεις από command line τότε ή θα έφτιαχνες μια μεταβλητή περιβάλλοντος CLASSPATH η οποία θα περιείχε τα paths προς τα JARs ή τα class folders ή θα έγραφες τα εξης: java -classpath %CLASSPATH%;.;C:\MyProjects\JDBCConnect\mysqljdbc.jar TheClassYouWantToRun HTH
elis88 Δημοσ. 11 Μαΐου 2009 Μέλος Δημοσ. 11 Μαΐου 2009 Επειοδή τώρα αντιμετοπίζω πρόβλημα όταν τρέχω το Applet από .html. Πως το διορθώνω; Υπάρχει τρόπος να ορίσω το classpath στην HTML σελίδα;
vag_pRiMi Δημοσ. 11 Μαΐου 2009 Δημοσ. 11 Μαΐου 2009 Δεν ορίζεις το CLASSPATH στην HTML, αλλά περνάς τις παραμέτρους απ'ευθείας στο JVM που θα ξεκινήσει για να τρέξει το Applet σου: appletviewer -J-classpath -J%CLASSPATH%;.;C:\MyProjects\JDBCConnect\mysqljdbc.jar file:///FullPathToTheClassYouWantToRun Κάτι δεν μου κολλάει στην λογική σου όμως. Έχεις ένα Applet που τρέχει client side και χτυπάει μια βάση. Η βάση αυτή όμως θα βρίσκεται στο PC του client; Μην παρασύρεσαι από το γεγονός ότι ως developer τώρα βλέπεις και τον client και τον server .
elis88 Δημοσ. 12 Μαΐου 2009 Μέλος Δημοσ. 12 Μαΐου 2009 Τελικά αυτό που ήθελα να κάνω το φτιάχνω σε php. Ευχαριστω πολυ
vag_pRiMi Δημοσ. 12 Μαΐου 2009 Δημοσ. 12 Μαΐου 2009 Όχι! Γιατί; ΓΙΑΤΙ!! Έλα να το συζητήσουμε λίγο. Η Java είναι φίλη σου
elis88 Δημοσ. 12 Μαΐου 2009 Μέλος Δημοσ. 12 Μαΐου 2009 Ναι γμτ, το είχα τελειώσει σε java. Και τώρα πρέπει να το κάνω απο την αρχή σε php
virxen75 Δημοσ. 16 Μαΐου 2009 Δημοσ. 16 Μαΐου 2009 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
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.