最近我學(xué)習(xí)了Java連接MySQL數(shù)據(jù)庫的知識(shí),在編寫代碼時(shí)遇到了一些問題。我發(fā)現(xiàn)在連接數(shù)據(jù)庫的代碼中出現(xiàn)了紅叉,導(dǎo)致代碼無法正常運(yùn)行。
import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public class ConnectMySQL { public static void main(String[] args) { Connection conn = null; String url = "jdbc:mysql://localhost:3306/test?useSSL=false"; String user = "root"; String password = "123456"; try { Class.forName("com.mysql.jdbc.Driver"); // 加載驅(qū)動(dòng)程序 conn = DriverManager.getConnection(url, user, password); // 連接數(shù)據(jù)庫 if (conn != null) { System.out.println("數(shù)據(jù)庫連接成功!"); } else { System.out.println("數(shù)據(jù)庫連接失敗!"); } } catch (ClassNotFoundException e) { System.out.println("找不到驅(qū)動(dòng)程序類 ,加載驅(qū)動(dòng)失敗!"); e.printStackTrace(); } catch (SQLException e) { System.out.println("數(shù)據(jù)庫連接失敗!"); e.printStackTrace(); } } }
通過查找資料,我發(fā)現(xiàn)這個(gè)問題是由于沒有導(dǎo)入MySQL的JDBC驅(qū)動(dòng)程序?qū)е碌摹R虼耍恍鑼ysql-connector-java-版本號(hào).jar文件導(dǎo)入項(xiàng)目的classpath下即可。
經(jīng)過修改后,代碼如下:
import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public class ConnectMySQL { public static void main(String[] args) { Connection conn = null; String url = "jdbc:mysql://localhost:3306/test?useSSL=false"; String user = "root"; String password = "123456"; try { Class.forName("com.mysql.jdbc.Driver"); // 加載驅(qū)動(dòng)程序 conn = DriverManager.getConnection(url, user, password); // 連接數(shù)據(jù)庫 if (conn != null) { System.out.println("數(shù)據(jù)庫連接成功!"); } else { System.out.println("數(shù)據(jù)庫連接失敗!"); } } catch (ClassNotFoundException e) { System.out.println("找不到驅(qū)動(dòng)程序類 ,加載驅(qū)動(dòng)失敗!"); e.printStackTrace(); } catch (SQLException e) { System.out.println("數(shù)據(jù)庫連接失敗!"); e.printStackTrace(); } } }
現(xiàn)在,代碼順利運(yùn)行,成功連接到了我自己的MySQL數(shù)據(jù)庫,我也能夠愉快地進(jìn)行相關(guān)操作了。