这似乎是一个常见问题,但我找不到有效的解决方案。我已经浏览了几十个线程,并一直在和我的老师一起工作。我正在尝试使用 JDBC 连接到 MYSQL。我也在使用 tomcat 服务器并运行 xubuntu 12.04。我收到 ClassNotFound 异常。
我已经尝试了放置在 /tomact/lib 和 /usr/share/java 中的 JDBC mysql-connector-java.jar 驱动程序,并在每个实例中手动构建了路径。我还尝试通过部署程序集添加路径。我试过使用 EXPORT CLASSPATH。没有任何效果。我不能让这个异常停止被抛出。有没有人可以尝试其他解决方案?
我的代码:
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)
utils.DatabaseUtils.main(DatabaseUtils.java:35) 处的线程“主”java.lang.NullPointerException 中的异常
对你的帮助表示感谢!