这似乎是一个常见的问题,但我找不到一个有效的解决方案。我已经看了几十个帖子,并且一直在和我的老师一起工作。我正在尝试使用JDBC连接到MYSQL。我还使用了tomcat服务器并运行了xubuntu 12.04。我得到了ClassNotFound异常。
我尝试了/tomact/lib和/usr/share/java中的JDBC mysql-connector-java.jar驱动程序,并在每个实例中手动构建了路径。我还尝试过通过deploy程序集添加路径。我尝试过使用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)处的线程"main“java.lang.NullPointerException出现异常
我们将非常感谢您的帮助!
发布于 2012-12-13 13:12:45
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
您缺少MySQL驱动程序库。由于您使用的是Mysql数据库,因此请确保包含mysql-connector-java。
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.8-dmr</version>
</dependency>发布于 2013-10-14 01:02:45
将MySQL-connector-java-5.1.6.jar放在Tomcat/lib目录中,我终于可以使用了。不应该这样做,所以我怀疑我的Tomcat安装不是最佳的,并且部署war文件可能会有问题
发布于 2016-06-24 19:16:11
版本不匹配可能会导致此错误。我自己也被这个错误困扰了好几天。请检查jdbc连接器的版本。最新的连接器需要java 1.8。在我的例子中,我的tomcat版本不支持我添加的连接器版本,所以也请检查一下。
PS : Tomcat - 8.0.32;mysql-connector - 5.1.30 with java 1.7 works (Y)
https://stackoverflow.com/questions/13853054
复制相似问题