亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

看我找的代碼,求大神幫我分析分析是哪里出的錯誤???急死了

看我找的代碼,求大神幫我分析分析是哪里出的錯誤???急死了

狐的傳說 2022-12-22 17:13:42
import java.sql.*;  public class JDBCTest {  public static void main(String[] args){  //驅動程序名String driver = "com.mysql.jdbc.Driver";// URL指向要訪問的數據庫名scutcsString url = "jdbc:mysql://127.0.0.1:3306/scutcs";// MySQL配置時的用戶名String user = "root";// Java連接MySQL配置時的密碼String password = "root";try {// 加載驅動程序Class.forName(driver);// 連續數據庫Connection conn = DriverManager.getConnection(url, user, password);if(!conn.isClosed())System.out.println("Succeeded connecting to the Database!");// statement用來執行SQL語句Statement statement = conn.createStatement();// 要執行的SQL語句String sql = "select * from tbmakerdata";String InsertData = "insert into tbmakerdata(Name,Type,Lat,Lng) values ('0102123','myIconW','39.1087','117.1771');";//結果集//statement.executeUpdate(InsertData);ResultSet rs = statement.executeQuery(sql);  System.out.println("-----------------");  System.out.println("執行結果如下所示:");  System.out.println("-----------------");  System.out.println("圖標類型" + "\t" + "名稱" +"\t" +"經緯度");  System.out.println("-----------------");  String name = null;  while(rs.next()) {  //選擇sname這列數據name = rs.getString("Name");// 首先使用ISO-8859-1字符集將name解碼為字節序列并將結果存儲新的字節數組中。// 然后使用GB2312字符集解碼指定的字節數組//name = new String(name.getBytes("ISO-8859-1"),"GB2312");// 輸出結果System.out.println(rs.getString("Type") + "\t" + name + "\t" + rs.getString("Lat") + "\t" + rs.getString("Lng"));  }  rs.close();  conn.close();  } catch(ClassNotFoundException e) {  System.out.println("Sorry,can`t find the Driver!");  e.printStackTrace();  } catch(SQLException e) {  e.printStackTrace();  } catch(Exception e) {  e.printStackTrace();  }  }}用這個代碼新建一個項目就可以正常運行并連接數據庫。當我將它寫入另一個項目的一個方法時就報錯java.lang.ClassNotFoundException: com.mysql.jdbc.Driver我這個類里也導入了java.sql.*,而且com.mysql.jdbc.Driver的路徑也和上一個項目的路徑相同。
查看完整描述

3 回答

?
慕斯王

TA貢獻1864條經驗 獲得超2個贊

個人覺得如果你單獨成一個項目能運行的話,換成一個方法也是沒有問題的,樓上的那些方法肯定都不是出錯的地方,因為如果沒有導入包的話你這個程序都不可能運行的。但是現在出現了問題,這其中一種最優可能的原因是你擅自把在這個函數中的某些個變量比如Driver定義在了函數訪問不到的地方,比如主函數中,這就有可能導致出錯。其實你應該把出問題的那個項目貼出來,大家才能幫得到你。不然你讓大家一頓猜,很難找到真正出錯的原因。

查看完整回答
反對 回復 2022-12-25
?
Qyouu

TA貢獻1786條經驗 獲得超11個贊

如果你只是要運行這段代碼的話,不需要Tomcat(具體是什么你可以去網上查查)。運行這段代碼(根據代碼的內容來看)的前提是你的電腦上有mysql,并且你在mysql中擁有名為scutcs的database(數據庫),在這個databse中擁有名為tbmakerdata的表(table),并且在表中有Name,Type,Lat,Lng這些字段并且有一些值。之后在你的classpath中有java連接mysql的驅動包(mysql-connector-java-5.1.7-bin.jar 你可以去mysql的官網上下載,不一定是5.1.7),在上面的都齊全的之后,你可以運行這段代碼,可以再控制臺看到結果。如果你用的是eclipse這樣的ide工具的話,操作上會簡單一點。

查看完整回答
反對 回復 2022-12-25
?
郎朗坤

TA貢獻1921條經驗 獲得超9個贊

是tomcat找不到MYSQL JAR包的問題。后來又把mysql-connector-java-5.1.7-bin.jar導入到tomcat的lib目錄下面就ok了,嘿……
在java項目中,只需要引入mysql-connector-java-5.1.7-bin.jar就可以運行java項目。
在web項目中,當Class.forName("om.mysql.jdbc.Driver");時myeclipse是不會去查找字符串,不會去查找驅動的。所以只需要把mysql-connector-java-5.1.7-bin.jar拷貝到tomcat下lib目錄就可以了。

查看完整回答
反對 回復 2022-12-25
  • 3 回答
  • 0 關注
  • 133 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號