有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

在eclipse中的Tomcat上使用JDBC for MYSQL时,java classNotFound异常

这似乎是一个常见的问题,但我找不到有效的解决方案。我查阅了几十条线索,一直在和我的老师一起工作。 我正在尝试使用JDBC连接到MYSQL。我还使用tomcat服务器并运行xubuntu 12.04。我发现ClassNotFound异常

我试过JDBC mysql连接器java。jar驱动程序放在/tomact/lib和/usr/share/java中,并在每个实例中手动构建路径。我还尝试通过部署程序集添加路径。我尝试过使用导出类路径。什么都没用。我无法让这个异常停止被抛出。有谁有其他的解决方案我可以试试吗

我的代码:

public static Connection getConnection() {
    if(connection!=null){
        return connection;
    }else{
        try{
            Class.forName("com.mysql.jdbc.Driver").newInstance();
            String dbURL = "jdbc:mysql://144.91.20.136:3306/jewelryInventoryGallison";
            String username = "javaee";
            String password = "mills2012";

            connection = DriverManager.getConnection(dbURL, username, password);
            return connection;
        } catch (Exception ex) {
            ex.printStackTrace();
            return null;
        }
    }
}

测试等级:

public static void main(String[] args) throws Exception{ 
      Connection conn = DatabaseUtils.getConnection();
      Statement st = conn.createStatement();
      ResultSet rs = st.executeQuery("SELECT * FROM Inventory");
      while(rs.next()) {
       System.out.println(rs.getString("name"));
      }

 }

和跟踪:

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 utils.DatabaseUtils.getConnection(DatabaseUtils.java:19)
at utils.DatabaseUtils.main(DatabaseUtils.java:34)

线程“main”java中出现异常。lang.NullPointerException 在utils。数据库工具。main(DatabaseUtils.java:35)

非常感谢您的帮助


共 (2) 个答案

  1. # 1 楼答案

    修改“通用”。加泰罗尼亚的加载器属性。属性文件,如下图所示

    common.loader=${catalina.base}/lib,${catalina.base}/lib/*.jar,${catalina.home}/lib,${catalina.home}/lib/*.jar
    

    还添加了“mysql-connector-java-5.0.8-bin”。tomcat“lib”文件夹中的“jar”

  2. # 2 楼答案

    版本不匹配可能会导致此错误。我自己被困在这个错误中好几天了。请检查jdbc连接器的版本。最新的连接器需要java 1.8。在我的例子中,我的tomcat版本不支持我添加的连接器版本,所以也请检查一下

    PS:Tomcat-8.0.32;mysql连接器-5.1.30和Java1.7一起工作(Y)