我搜索了互聯網,試圖找到使用java和JDBC連接到MySQL的解決方案。不幸的是我找到了多個答案,沒有解決我的問題。使用JDBC連接到MySQL
我從MySQL下載了JDBC,並解壓縮文件以查找.jar。我把該.jar在我的C:/ Program Files文件(X86)/的Java/JDK .../JRE/lib/ext目錄文件夾中。我把我的環境變量CLASSPATH(也許CLASSPATH,類路徑??)以下:
%CLASSPATH%;.;C:\Program Files (x86)\Java\jdk1.8.0_65\jre\lib\ext
我用我由基於各種不同的解決方案,我已經看到了讓這個腳本:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class MySql {
public static void main(String[] args)
{
Connection con = getConnection();
if (con != null) {
System.out.println("Connection Made");
}
else {
System.out.println("Connection not made");
}
}
private static Connection getConnection() {
Connection con = null;
try {
Class.forName("com.mysql.jdbc");
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/sakila", "java", "java");
System.out.println("Connection Made");
conn.close();
}
catch (SQLException e)
{
System.out.println(e.getMessage());
System.exit(0);
}
catch (ClassNotFoundException e)
{
System.out.println(e.getMessage());
System.exit(0);
}
return con;
}
}
它用javac MySql.java編譯。然後當它運行(java MySql)時,我得到com.mysql.jdbc。我讀過,我不需要註冊驅動程序,但是當我刪除Class.forName時,我得到的是'找不到JDBC驅動程序'錯誤。
我無法將問題縮小到兩種: 1)。類路徑沒有正確設置。 2)。不正確的java連接代碼。 3)。無法找到MySQL服務器。
任何幫助,將不勝感激。
編輯 -
我.jar文件放置到桌面以進行測試。更改的系統變量CLASSPATH:
%CLASSPATH%;.;C:\User\User\Desktop\mysql-connector-java-5.1.38-bin.jar
然後,當我添加了微量的錯誤說法,我得到:
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
at java.net.URLClassLoader.findClass<Unkown Source>
at java.lang.ClassLoader.loadclass (Unknown source)
at sun.misc.Launcher$AppClassLoader.loadclass(Unkown Source)
etc.
etc.
編輯2 - 我一直在使用Connect Java to a MySQL database作爲一種資源,沒有的指令花了兩天時間我跟着解決了我的問題。
如果發生異常並且將完整異常粘貼到您的問題中,您可以執行e.printStackTrace()嗎?這個消息本身並沒有太多幫助。 – Jan
您是否在構建路徑中包含JDBC jar? –
現在是時候擺脫把東西扔進「....../jre/lib/ext」的習慣,顯然這個選項[將在Java 9中刪除](https://blogs.oracle.com/java-platform -group /項/ planning_safe_removal_of_under)。 –