我正在尝试开发Java应用程序,但我遇到的问题是,当我在运行应用程序时尝试连接到数据库时,我得到java.lang.ClassNotFoundException: con.mysql.jdbc.Driver
。我花了两天时间搞清楚,我无法解决问题。我使用Netbeans IDE 7.1在Win 8.1上。
我也尝试过重新创建应用程序,并且在开始工作之前一切正常,直到我再次使用面向对象。
所以这是我的MySQLConnect.java:
package calylibrary;
import java.sql.DriverManager;
import java.sql.*;
import javax.swing.*;
public class MySQLConnect {
Connection conn = null;
public static Connection connectDb()
{
String dbURL = "jdbc:mysql://localhost:3306/library";
String dbUser = "root";
String dbPassword = "";
try
{
Class.forName("con.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection(dbURL, dbUser, dbPassword);
JOptionPane.showMessageDialog(null, "MySQLConnect to MySQLConnect Database Established.");
return conn;
}
catch(Exception e)
{
e.printStackTrace();
return null;
}
}
}
我从像这样的主类运行它:
public static void main(String args[]) {
MySQLConnect.connectDb();
/* Create and display the form */
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new MainFrame().setVisible(true);
}
});
}
我收到的完整错误消息:
java.lang.ClassNotFoundException: con.mysql.jdbc.Driver
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:171)
at calylibrary.MySQLConnect.connectDb(MySQLConnect.java:19)
at calylibrary.MainFrame.main(MainFrame.java:483)
有人可以帮助我吗?
答案 0 :(得分:0)
您必须加载JDBC MySQL驱动程序:
try
{
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection(dbURL, dbUser, dbPassword);
return conn;
}
所以" com"不是" con"。 :)