Java MySQL Driver和ClassNotFoundException

时间:2012-09-03 13:34:09

标签: java mysql driver classnotfoundexception

我正在尝试使用连接URL:

连接到mysql数据库
jdbc:mysql://127.0.0.1:3306/test

我已下载了coorect Mysql驱动程序以连接数据库,并尝试了多种方法来设置驱动程序,每种方法都不起作用。到目前为止,我已经尝试将JAR文件放在以下位置(并相应地更改PATH环境变量)

JRE/LIB/
JDK/LIB/
JRE/LIB/mysql-connector-java-5.1.21
JDK/LIB/mysql-connector-java-5.1.21

JAR文件的路径是其位置+ mysql-connector-java-5.1.21-bin.jar

在过去的4个多小时里,我在StackOverflow上阅读了多个问题和解决方案,以及有关此问题的在线教程,但没有一个能解决问题。

我一直在使用以下代码尝试连接

import java.sql.*;
import java.util.Date;

public class DatabaseHelper{

    private Connection          conn                = null;
    private Statement           statement           = null;
    private PreparedStatement   preparedStatement   = null;
    private ResultSet           resultSet           = null;
    private String              url                 = null;

    public DatabaseHelper(){
        try{
            Class.forName("com.mysql.jdbc.Driver");
            conn    = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/test");
            System.out.println("Driver Loaded!");
        }catch(SQLException e){
            e.printStackTrace();
        }catch(ClassNotFoundException e){
            e.printStackTrace();
        }
    }
}

堆栈跟踪

java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
        at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:186)
        at DatabaseHelper.<init>(DatabaseHelper.java:28)
        at DatabaseTest.<init>(DatabaseTest.java:6)
        at DatabaseTest.main(DatabaseTest.java:14)

2 个答案:

答案 0 :(得分:1)

您需要将JAR添加到类路径中。启动java应用程序时,只需输入:

 java -cp mysql-connector-java-5.1.21-bin.jar TheNameOfYourMainClass

答案 1 :(得分:0)

我在处理项目之前遇到过这个问题,我将jar文件放在2个位置,对我有用的内容如下:

我把mysql jar放在JAVA_HOME / JRE_FOLDER / lib / ext /

然后另一件事是我在项目中创建一个libs文件夹(直接在项目的文件夹中),并将mysql jar放在其中。之后,将jar(libs文件夹中的jar)添加到项目的构建路径中。

如果您使用Eclipse,则将jar添加到构建路径是通过右键单击jar并从菜单中选择“Build Path”然后选择“Add to Build Path”来完成的。

希望这有帮助,