2016-07-25 10 views
0

Aus irgendeinem Grund wird der folgende Code nicht ausgeführt, wenn ich versuche, einen Webdienst zum Einfügen von ID, Name und IDNO in eine MySQL-Datenbank zu erstellen. Ich habe MYSQL JDBC Driver - MYSQL Connector Bibliothek hinzugefügt, aber ich bekomme diesen Fehler "Severe: java.sql.SQLException: Kein geeigneter Treiber für jdbc gefunden: mysql: // localhost: 3306/web". Ich habe einige Antworten von Leuten durchgelesen, aber scheint keine Antwort zu bekommen. Was könnte der Grund sein? Jemand?java.sql.SQLException: Kein passender Treiber für jdbc gefunden: mysql

package com.database.www; 

import java.sql.Connection; 
import java.sql.DriverManager; 
import java.sql.SQLException; 
import java.sql.Statement; 
import javax.jws.WebService; 
import javax.jws.WebMethod; 
import javax.jws.WebParam; 

@WebService(serviceName = "database") 
public class database { 


    @WebMethod(operationName = "hello") 
    public void hello(@WebParam() int id, String name, String idno) { 

     try (

       Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/web", "root", ""); 
       Statement stm = conn.createStatement();) { 



      String insert = "INSERT INTO `web` " + "VALUES ("+id+", '"+name+"','"+idno+"')"; 
      int exc = stm.executeUpdate(insert); 
      System.out.println("The SQL Command is: " + insert); 
      System.out.println("Inserted Successfullly!"); 
     } 
    catch (SQLException e){ 
     e.printStackTrace(); 
    } 



    } 
} 
+0

** Wie ** haben Sie den mysql-Anschluss hinzugefügt? Und wie setzen Sie das um? –

+0

In den Bibliotheken, Bibliothek hinzufügen, dann wählte ich JDBC Lib auf Netbeans IDE. – bmm

+0

Und wie stellen Sie es bereit? Sie sollten es in Netbeans ausführen können, aber um es auf Ihrem Server auszuführen, muss es in der Regel auf dem Server * installiert * werden. –

Antwort

0

Ich habe gerade Class.forName("com.mysql.jdbc.Driver"); und es funktionierte.

package com.database.www; 

import java.sql.Connection; 
import java.sql.DriverManager; 
import java.sql.SQLException; 
import java.sql.Statement; 
import javax.jws.WebService; 
import javax.jws.WebMethod; 
import javax.jws.WebParam; 


@WebService(serviceName = "database") 
public class database { 


    @WebMethod(operationName = "hello") 
    public void hello(@WebParam() int id, String name, String idno) throws ClassNotFoundException { 

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

     try (

       Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/web", "root", ""); 
       Statement stm = conn.createStatement();) { 



      String insert = "INSERT INTO `web` " + "VALUES ("+id+", '"+name+"','"+idno+"')"; 
      int exc = stm.executeUpdate(insert); 
      System.out.println("The SQL Command is: " + insert); 
      System.out.println("Inserted Successfullly!"); 
     } 
    catch (SQLException e){ 
     e.printStackTrace(); 
    } 



    } 
} 
+0

Klingt so, als würden Sie den Treiber als Teil Ihrer Webanwendung bereitstellen, anstatt ihn auf dem Anwendungsserver zu installieren. –

+0

Beachten Sie, dass für den modernen JDBC-Treiber 'Class.forName' nicht notwendig sein sollte. –