2016-06-10 7 views
0

SchritteFehler beim Laufen jdbc

gefolgt
  • MySQL Workbench Installation
  • Anschluss-J herunterladen und extrahieren, um Mysql Ordner in Programmdateien Kopieren

    import java.sql.*; 
    public class FirstExample { 
    // JDBC driver name and database URL 
    static final String JDBC_DRIVER = "com.mysql.jdbc.Driver"; 
    static final String DB_URL = "jdbc:mysql://localhost/EMP"; 
    
    // Database credentials 
    static final String USER = "username"; 
    static final String PASS = "password"; 
    
    public static void main(String[] args) { 
    Connection conn = null; 
    Statement stmt = null; 
    try{ 
        //STEP 2: Register JDBC driver 
        Class.forName("com.mysql.jdbc.Driver"); 
    
        //STEP 3: Open a connection 
        System.out.println("Connecting to database..."); 
        conn = DriverManager.getConnection(DB_URL,USER,PASS); 
    
        //STEP 4: Execute a query 
        System.out.println("Creating statement..."); 
        stmt = conn.createStatement(); 
        String sql; 
        sql = "SELECT id, first, last, age FROM Employees"; 
        ResultSet rs = stmt.executeQuery(sql); 
    
        //STEP 5: Extract data from result set 
        while(rs.next()){ 
         //Retrieve by column name 
         int id = rs.getInt("id"); 
         int age = rs.getInt("age"); 
         String first = rs.getString("first"); 
         String last = rs.getString("last"); 
    
         //Display values 
         System.out.print("ID: " + id); 
         System.out.print(", Age: " + age); 
         System.out.print(", First: " + first); 
         System.out.println(", Last: " + last); 
        } 
         //STEP 6: Clean-up environment 
        rs.close(); 
        stmt.close(); 
        conn.close(); 
    }catch(SQLException se){ 
        //Handle errors for JDBC 
        se.printStackTrace(); 
    }catch(Exception e){ 
        //Handle errors for Class.forName 
        e.printStackTrace(); 
    }finally{ 
        //finally block used to close resources 
         try{ 
         if(stmt!=null) 
         stmt.close(); 
        }catch(SQLException se2){ 
        }// nothing we can do 
        try{ 
         if(conn!=null) 
         conn.close(); 
        }catch(SQLException se){ 
         se.printStackTrace(); 
        }//end finally try 
    }//end try 
        System.out.println("Goodbye!"); 
        }//end main 
        }//end FirstExample 
    

Diesen Code zu neuen Projekt in Eclipse. Wenn ich es dieser Fehler laufen mir einfiel

java.lang.ClassNotFoundException: com.mysql.jdbc.Driver 
at java.net.URLClassLoader.findClass(Unknown Source) 
at java.lang.ClassLoader.loadClass(Unknown Source) 
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) 
at java.lang.ClassLoader.loadClass(Unknown Source) 
at java.lang.Class.forName0(Native Method) 
at java.lang.Class.forName(Unknown Source) 
at FirstExample.main(FirstExample.java:17) 
    Goodbye! 

Dann

set classpath=C:\Program Files\MySQL\mysql-connector-java-3.1.14\mysql- 
connector-java-3.1.14\mysql-connector-java-3.1.14-bin.jar; 

Immer noch die gleichen Fehler diesen Befehl cmd versucht, was zusammen mit Ihrer wertvollen Lösung eine Erklärung zu tun, geben Sie bitte Dank

Antwort

0

unter Abhängigkeit pom.xml

<!-- http://mvnrepository.com/artifact/mysql/mysql-connector-java --> 
<dependency> 
    <groupId>mysql</groupId> 
    <artifactId>mysql-connector-java</artifactId> 
    <version>5.1.6</version> 
</dependency> 
in Ihrem hinzufügen

Wenn Sie nicht Maven verwenden, fügen Sie dieses Glas com.mysql.jdbc_5.1.5.jar zu Ihremhinzu rightclick on project--> build path-->configure build path-->libraries-->add external jar

+0

perfekt! es funktioniert dank @subbu royal –

+0

@arunkumar froh, das zu hören. –

0

Sie müssen die JAR-Datei des JDBC-Connectors in den Bibliotheksordner Ihres Projekts

kopieren

oder in der Bibliothek Ordner des Servers

Beide funktioniert ...

Runtime Variablen bekommen sie nicht von diesen beiden Standorten

+0

Wenn Sie immer noch nicht wissen, was Sie tun sollen, antworten Sie mir mit diesen Details. 1. Welches Werkzeug benutzt du für die Entwicklung (Editor zB Eclipse oder Netbeans)? 2. Welchen Server benutzen Sie (zB Tomcat oder Glassfish)? –

+0

Kopierte die einzelne JAR-Datei "mysql server 5.7/lib" -Ordner. Derselbe Fehler ist aufgetreten. Muss ich Pfad oder etwas setzen –

+0

nein nein nicht in sql Server lib kopieren Sie es stattdessen auf Projekte lib oder Server (WebServer/Apache) lib –

0

Ihr Klassenpfad enthält ein Leerzeichen java.exe wird es nicht korrekt abholen.
Verwenden Sie den Caretzeichen^den Raum zu entkommen: (! Und überprüfen Sie, dass der Pfad korrekt ist)

set classpath=C:\Program^ Files\MySQL\mysql-connector-java-3.1.14\mysql-connector-java-3.1.14\mysql-connector-java-3.1.14-bin.jar; 

.

+0

danke, ich habe es müde, der gleiche Fehler zeigt wieder auf ClassNotFoundException. Und der Pfad stimmt auch. @wero –

+0

Sehr geehrte @wero, warum zeigt es die Ausnahme bei 'Class.forName (" com.mysql.jdbc.Driver ");' –

+0

@Arunkumar, weil diese Zeile fehlschlägt. Java versucht, die Klasse 'com.mysql.jdbc.Driver' zu laden, aber sie kann sie nicht im Klassenpfad finden - da irgendwie 'mysql-connector-java-3.1.14-bin.jar' nicht Teil des Klassenpfads ist – wero