2016-11-02 136 views
1

我嘗試將Android應用程序的值發佈到遠程MySQL數據庫中。 數據庫表看起來像 this將變量插入MySQL數據庫

拋出java.lang.ClassNotFoundException:下面這段代碼

  try { 
        Class.forName("com.mysql.jdbc.Driver"); 
       } catch (ClassNotFoundException e) { 
        e.printStackTrace(); 
       } 
       Connection conn = null; 
       try { 
        conn = DriverManager.getConnection("jdbc:mysql://myhost:3306/mydb", 
          "root", "root"); 
       } catch (SQLException e) { 
        e.printStackTrace(); 
       } 
       System.out.println("Connected to Database"); 
       Statement stmt1 = null; 
       try { 
        stmt1 = conn.createStatement(); 
       } catch (SQLException e) { 
        e.printStackTrace(); 
       } 
       ResultSet rs1=null; 
       PreparedStatement sql = null; 
       try { 
        sql = conn.prepareStatement("INSERT INTO `mytable`(studentid,classid,startsig,start,end,endsig) VALUES (?, ?, ?, ?, ?, ?)"); 
       } catch (SQLException e) { 
        e.printStackTrace(); 
       } 

       //set values before sending 
       try { 
       sql.setString(1, studentid); 
       sql.setString(2, classid); 
       sql.setString(3, startsig); 
       sql.setString(4, start); 
       sql.setString(5, end); 
       sql.setString(5, endsig); 
       } catch (SQLException e) { 
        e.printStackTrace(); 
       } 

       System.out.println("sql:"+sql); 
       try { 
        stmt1.executeUpdate(String.valueOf(sql)); 
       } catch (SQLException e) { 
        e.printStackTrace(); 
       } 

我有錯誤訊息com.mysql.jdbc.Driver

錯誤消息說,沒有合適的驅動程序被發現這項行動。

+0

運行的是哪裏?你的類路徑是什麼?裏邊啥啊?是否有涉及的servlet容器?什麼版本的jdbc? – Drew

+0

我應該使用哪種版本的JDBC? – appkovacs

+0

沒有太多的答案或你的環境的細節。祝你好運:p – Drew

回答

-1

您必須將mysql-connector.jar放入您的應用程序類路徑中!該應用程序沒有找到該類,因爲它不在那裏。

你可以下載here

編輯1

嘗試像這樣將其添加到您的搖籃:

dependencies { 
     compile 'mysql:mysql-connector-java:5.1.+' 
} 
+0

請問你能解釋一下,我該如何使用Gradle添加這個依賴項? – appkovacs

+0

@appkovacs,看我的編輯1是否適合你。 Besosdes,可以發佈你的gradle構建文件在這裏? – BrunoDM

+0

我收到錯誤消息:任務':app:preDexDebug'的執行失敗。 – appkovacs

0

添加在您建立文件下面的代碼。

dependencies { 
    compile group: 'mysql', name: 'mysql-connector-java', version: '6.0.5' 
} 
+0

它沒有工作,我發現這種方法已經過時,所以我實現了另一種解決方案。 – appkovacs