webentwicklung-frage-antwort-db.com.de

Wie füge ich den JDBC-MySQL-Treiber einem Eclipse-Projekt hinzu?

  1. Ich habe den mysql-connector-Java-5.1.24-bin.jar heruntergeladen
  2. Ich habe in meinem Projekt einen lib-Ordner erstellt und das Glas dort abgelegt.
  3. eigenschaften von Projekt-> Erstellungspfad-> JAR hinzufügen und wählen Sie die JAR oben.
  4. Ich bekomme noch Java.sql.SQLException: No suitable driver found for jdbc:mysql//localhost:3306/mysql

Ich benutze Mysql 5.5 Der Code:

package DBTest;

import Java.io.IOException;
import Java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import Java.sql.*;
import Java.util.*;

/**
 * Servlet implementation class TenUsers
 */
@WebServlet("/TenUsers")
public class TenUsers extends HttpServlet {
    /**
     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        PrintWriter out = response.getWriter();
        String mySqlUrl = "jdbc:mysql://localhost:3306/mysql";

        Properties userInfo = new Properties();
        userInfo.put("user", "root");
        userInfo.put("password", "SabababArba");
        try{
            Connection connection = DriverManager.getConnection(mySqlUrl, userInfo);
        }catch(Exception e) {
            out.println(e);
        }      
    }
}

Wenn ich Class.forName("com.mysql.jdbc.Driver"); vor Connection connection = DriverManager.getConnection(mySqlUrl, userInfo); hinzufüge, erhalte ich Java.lang.ClassNotFoundException: com.mysql.jdbc.Driver

12

Versuchen Sie das einzufügen:

DriverManager.registerDriver(new com.mysql.jdbc.Driver());

bevor Sie die JDBC-Verbindung erhalten.

11
niculare

1: Ich habe den mysql-connector-Java-5.1.24-bin.jar heruntergeladen.

Okay.


2: Ich habe in meinem Projekt einen lib-Ordner angelegt und das Glas dort hineingelegt.

Falsch. Sie müssen JAR im Ordner /WEB-INF/lib ablegen. Sie müssen keine zusätzlichen Ordner erstellen.


3: Eigenschaften von Projekt-> Erstellungspfad-> JAR hinzufügen und oben das JAR auswählen.

Nicht notwendig. Machen Sie alles rückgängig, um mögliche Konflikte zu vermeiden.


4: Ich bekomme immer noch Java.sql.SQLException: Es wurde kein geeigneter Treiber für jdbc gefunden: mysql // localhost: 3306/mysql

Diese Ausnahme kann zwei Ursachen haben:

  1. Der JDBC-Treiber befindet sich nicht im Laufzeitklassenpfad. Dies muss gelöst werden, indem 2) der richtige Weg ausgeführt wird.
  2. Die JDBC-URL wird von keinem der geladenen JDBC-Treiber erkannt. Tatsächlich ist die JDBC-URL falsch, da laut MySQL JDBC-Treiberdokumentation ein weiterer Doppelpunkt zwischen dem Schema und dem Host sein sollte.

    jdbc:mysql://localhost:3306/mysql
    
6
BalusC

Sie können die JAR-Datei des Treibers im Java-Setup einfügen, anstatt sie jedem von Ihnen erstellten Projekt hinzuzufügen. Fügen Sie es in C:\Programme\Java\jre7\lib\ext oder wo auch immer Sie Java installiert haben, ein. 

Danach werden Sie feststellen, dass der JAR-Treiber im Bibliotheksordner Ihres erstellten Projekts (JRE-Systembibliothek) in der IDE eingetragen ist. Sie müssen es nicht wiederholt hinzufügen.

3
Vaibhav Joshi
  1. copy mysql-connector-Java-5.1.24-bin.jar  

  2. Fügen Sie es in\Apache Software Foundation\Tomcat 6.0\lib\<- here -> ein.

  3. Starten Sie Ihren Server von Eclipes aus neu.

  4. Erledigt

2
Dipanjan

wenn Sie diese Ausnahme immer wieder erhalten, laden Sie mein SQL-Connector herunter und fügen Sie sie in den Tomcat/WEB-INF/lib-Ordner ein und fügen Sie den mysql-Connector in diesen Ordner ein. Definitiv funktioniert dies. Wenn Ihr System also 64-Bit ist, muss Jdk 64-Bit sein

1

sie haben keinen Treiber in den Speicher geladen. Verwenden Sie diese Funktion in init()

Class.forName("com.mysql.jdbc.Driver");

Sie haben auch einen Doppelpunkt (:) in der URL vergessen, verwenden Sie diesen

String mySqlUrl = "jdbc:mysql://localhost:3306/mysql";
1
Ankit

Probieren Sie dieses Tutorial aus, es hat die Erklärung und es wird hilfreich sein http://www.ccs.neu.edu/home/kathleen/classes/cs3200/JDBCtutorial.pdf

1
Prem Chandran