import java.sql.*;public class Mysql
{
public static void main(String[] args)
{
try {
String driver = "org.gjt.mm.mysql.Driver";
String url = "jdbc:mysql://localhost:3306/test";//server是数据库名
String user = "root";
String password = "";
Connection conn = null;
ResultSet rs = null;
Statement stmt = null;
Class.forName(driver).newInstance();
conn = DriverManager.getConnection(url, user, password);
stmt = conn.createStatement();
rs = stmt.executeQuery("select *");
while (rs.next()) {
System.out.println("" + rs.getInt(1) + "");
System.out.println(":" + "");
}
rs.close();
conn.close();
}
catch (Exception e) {
e.printStackTrace();
}
}
}如上源代码,编译可以通过,运行时出现NoClassDefFoundError错误,为什么?
classpath加了JDBC的驱动路径,也加了. 但还是有错,什么原因?
{
public static void main(String[] args)
{
try {
String driver = "org.gjt.mm.mysql.Driver";
String url = "jdbc:mysql://localhost:3306/test";//server是数据库名
String user = "root";
String password = "";
Connection conn = null;
ResultSet rs = null;
Statement stmt = null;
Class.forName(driver).newInstance();
conn = DriverManager.getConnection(url, user, password);
stmt = conn.createStatement();
rs = stmt.executeQuery("select *");
while (rs.next()) {
System.out.println("" + rs.getInt(1) + "");
System.out.println(":" + "");
}
rs.close();
conn.close();
}
catch (Exception e) {
e.printStackTrace();
}
}
}如上源代码,编译可以通过,运行时出现NoClassDefFoundError错误,为什么?
classpath加了JDBC的驱动路径,也加了. 但还是有错,什么原因?
windows 下
set classpath=.;X:\xxx\mysql-connector-java-x.x.xx-bin.jar
unix/linux下
CLASSPATH=.:/xxx/mysql-connector-java-x.x.xx-bin.jar
export CLASSPATH
另外,程序中
rs = stmt.executeQuery("select *");
应改为
rs = stmt.executeQuery("select * from 你的表");
而不是ClassNotFoundException?
要不就是路径添加错误.
改为conn = DriverManager.getConnection(url);
rs = stmt.executeQuery("select *");也不对
改为
rs = stmt.executeQuery("select * from 你的表");
同时把conn = DriverManager.getConnection(url, user, password);
改为conn = DriverManager.getConnection(url);
rs = stmt.executeQuery("select *");也不对
改为
rs = stmt.executeQuery("select * from 你的表");
还有,to:believefym,确实是NoClassDefFoundError
第一:
String driver = "org.gjt.mm.mysql.Driver";//或许你用的驱动不是这个。
更改为:
String driver="com.mysql.jdbc.Driver".
第二:
rs = stmt.executeQuery("select *");// SQL语句不对吧^_^
更改为:
rs = stmt.executeQuery("select * from table_name");我觉得可以解决你的问题了。good lucky!