MySQL jdbc驱动程序和Eclipse问题

时间:2012-03-14 11:51:30

标签: java eclipse java-ee jdbc

我在加载MySQL JDBC驱动程序时遇到问题。我已经尝试了所有提及的here,但我仍遇到问题。

我得到的错误是:

    Exception in thread "main" java.lang.ClassNotFoundException: com.mysql.jdbc.driver
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Unknown Source)
    at Main.main(Main.java:12)

我的代码如下:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;

public class Main {

   public static void main(String args[]) throws Exception {

      //accessing the driver
      Class.forName("com.mysql.jdbc.driver");

      // creating variable to pass the connection information into
      Connection dbcon = DriverManager.getConnection(
            "jdbc:mysql//localhost:3306/test", "root", "root");

      PreparedStatement statement = dbcon
            .prepareStatement("select * from names");

      ResultSet result = statement.executeQuery();

      while (result.next()) {
         System.out.println(result.getString(2));

      }
   }
}

screenshot

正如您在上面所看到的,我已将驱动程序放在lib文件夹中,并且我已将其放入Apache tomcat lib文件夹中,因为这也是建议的。

感谢您提供给我的任何帮助。 安德鲁

3 个答案:

答案 0 :(得分:2)

MySql connectorJ JAR文件中的类名是Driver。所以你需要改变

Class.forName("com.mysql.jdbc.driver");

Class.forName("com.mysql.jdbc.Driver");

答案 1 :(得分:1)

它告诉你堆栈跟踪第一行的问题:

Exception in thread "main" java.lang.ClassNotFoundException: com.mysql.jdbc.driver

驱动程序名称为com.mysql.jdbc.Driver(大写字母D)。

答案 2 :(得分:0)

加载mysql连接库时出现问题。请检查正确的mysql库加载是否成功。因为当库加载成功时,库包显示所有外部加载的库。