JDBC Datenbank funktioniert nicht

Celes

Mitglied
Hallo ich habe zur zeit ein Projekt, wo ich eine Datenbankverbindung brauch.
Den mysql Connector runtergeladen und entpackt. In den Classpath hab ich ihn über die Konsole eingefügt:

Code:
java -cp C:\Weg_zum_Pfad\mysql-connector-5.1.19-bin.jar

So nun zu meinem Programm..
Hier ist erstmal mein Quellcode bis jetzt:

Java:
try
          {
            // create our mysql database connection
            String myDriver = "com.mysql.jdbc.Driver";
            myDriver = "org.gjt.mm.mysql.Driver";
            String myUrl = "jdbc:mysql://localhost/schule";
            Class.forName(myDriver).newInstance();
            Connection conn = DriverManager.getConnection(myUrl, "root", "");
          }
catch (Exception e)
          {
            System.err.println(e.getMessage());
            e.printStackTrace();
          }
wenn ich es öffne kommt dann diese Fehlermeldung:
Java:
java.lang.ClassNotFoundException: org.gjt.mm.mysql.Driver
	at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Class.java:169)
	at Grundriss$MyMouseListener.mousePressed(Grundriss.java:48)
	at java.awt.Component.processMouseEvent(Component.java:6260)
	at java.awt.Component.processEvent(Component.java:6028)
	at java.awt.Container.processEvent(Container.java:2041)
	at java.awt.Window.processEvent(Window.java:1836)
	at java.awt.Component.dispatchEventImpl(Component.java:4630)
	at java.awt.Container.dispatchEventImpl(Container.java:2099)
	at java.awt.Window.dispatchEventImpl(Window.java:2478)
	at java.awt.Component.dispatchEvent(Component.java:4460)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
hat jemand eine Ahnung was der Fehler ist? Liegt es vielleicht am Classpath?
Danke für Hilfe! 🙂
 
Code:
String myDriver = "com.mysql.jdbc.Driver";
myDriver = "org.gjt.mm.mysql.Driver";
Was soll denn das?! Mit der zweiten String-Zuweisung überschreibst du die erste doch bloß, und
Code:
org.gjt.mm.mysql.Driver
ist nunmal keine valide Klasse.
 
mal davon abgesehen ist ein "Class.forName().newInstance()" auch überhaupt nicht nötig da java.sql.DriverManager die ServiceLoader-API nutzt ... und die meisten jdbc-driver dafür ausgelegt sind ...
also muss der driver nur im CP liegen und er sollte von der VM automatisch geladen werden ...

aber mit [c]java -cp mysql-con.jar[/c] addest du diesen noch lange nicht zum CP ...
wie man diesen ändert kannst du in der FAQ nachlesen ...


alles in allem : lern bitte erstmal die grundlagen ... da diese scheinbar fehlen ...
 
Was soll denn das?! Mit der zweiten String-Zuweisung überschreibst du die erste doch bloß, und
Code:
org.gjt.mm.mysql.Driver
ist nunmal keine valide Klasse.

da hab ich nur versucht über eine andere URL eine Verbindung zu bekommen was auch nich geklappt hat weil das gleiche Ergebnis rauskam..

Ja ich bin noch nicht so erfahren in diesem Gebiet und brauch dies für ein Projekt was ich bald abgeben muss! Ich hab wirklich probiert es zu lernen aber mir geht die Zeit davon.. Kannst du mir bitte den Link geben, wo ich nachlesen kann wie man den Klassenpfad einfügt?
Vielen Dank!
 
Ja ich bin noch nicht so erfahren in diesem Gebiet und brauch dies für ein Projekt was ich bald abgeben muss! Ich hab wirklich probiert es zu lernen aber mir geht die Zeit davon.. Kannst du mir bitte den Link geben, wo ich nachlesen kann wie man den Klassenpfad einfügt?
Vielen Dank!

NEIN ... da ich dir bereits einen tipp gegeben habe wo dies nach zu lesen ist ... zur not hilft auch das große G ...
 
ich meine nur.. wie fügt man dann den Klassenpfad ein?? Überall steht das man die Jar-Datei in den Klassenpfad einfügen muss nur wie? Ich hab wirklich schon überall nach einer Lösung gesucht aber es entweder falsch gemacht oder nicht verstanden
 

Neue Themen


Zurück
Oben