【发布时间】:2011-06-11 21:21:20
【问题描述】:
我正在尝试使用 jdbc 在我的小程序和我的 mysql 服务器之间建立连接
我在项目中添加了jar mysql-connector-java-5.1.14-bin.jar
然后我使用了这个代码
public void databaseTesting(){
Connection con;
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
con = DriverManager.getConnection( "jdbc:mysql://localhost:3306/test", "root","");
System.err.println("connected !");
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM `test`.`test`;");
while (rs.next()) {
int A = rs.getInt("columnA");
int B = rs.getInt("columnB");
System.err.println("A "+A+" B "+B);
}
} catch (SQLException e) {
System.err.println("failed to connect");
} catch (InstantiationException e) {
System.err.println("InstantiationException");
} catch (IllegalAccessException e) {
System.err.println("IllegalAccessException");
} catch (ClassNotFoundException e) {
System.err.println("ClassNotFoundException");
}
}
由于某种原因,我不断收到 ClassNotFoundException。
编辑
jar 被添加到构建路径并出现在引用的库中。
异常是由
引发的Class.forName("com.mysql.jdbc.Driver").newInstance();
有人知道为什么吗?
提前谢谢杰森
【问题讨论】:
-
“将jar mysql-connector-java-5.1.14-bin.jar 添加到项目中”是什么意思?您是将 JAR 添加到类路径中还是只是将其放入项目中?
-
您还需要添加异常堆栈跟踪。哪个类没有找到?
-
@faith:给定
try块中的代码,这可能只是一个可能的缺失类。其他人(即在编译时出现的那些)宁愿在运行时生成NoClassDefFoundError,如果它真的丢失了。 -
已经将 jar 添加到构建路径中。异常由 Class.forName("com.mysql.jdbc.Driver").newInstance();
-
感谢您的帮助,问题是我没有将jar放在WEB-INF/lib文件夹中。