java.lang.ClassNotFoundException: org.gjt.mm.mysq.Driver这也许是最普遍的错误了,一般解决方法就是检查数据库驱动是否安装到jdk目录下 (如:将mysql-connector-1-3-1.jar文件copy到jdk目录下的lib文件夹中) classpath是否设置了驱动的目录 (CLASSPATH=.;D:\j2sdk\lib\dt.jar;D:\j2sdk\lib\tools.jar;D:\j2sdk\lib\mysql-connector-1-3-1.jar;)。 我的以上两项设置都正确,测试连接代码没有问题,但是在eclipse中就是报错(如上) import java.sql.*; public class mysqltest {  public static void main(String[] args) {   //driverName   String driverName="org.gjt.mm.mysql.Driver";   //database username   String userName="root";   //psw   String userPasswd="ss";   //dbname   String dbName="java_app";   //tablename   String tableName="staff";   //conncet comments   String url="jdbc:mysql://localhost/"+dbName+"?user="+userName+"&password="+userPasswd;      System.out.println(url);       try{    Class.forName(driverName).newInstance();    Connection connection=DriverManager.getConnection(url);    Statement statement = connection.createStatement();    String sql="SELECT * FROM "+tableName;    ResultSet rs = statement.executeQuery(sql); //    get result    ResultSetMetaData rmeta = rs.getMetaData(); //    get col    int numColumns=rmeta.getColumnCount(); //    output    for(int i=1;i<=numColumns;i++) {        if(i<numColumns)          System.out.print(rmeta.getColumnName(i)+" | ");        else          System.out.println(rmeta.getColumnName(i));        }        while(rs.next()){           for(int i=1;i<=numColumns;i++) {               if(i<numColumns)                  System.out.print(rs.getString(i).trim()+" | ");               else                  System.out.println(rs.getString(i).trim());           }        }     rs.close();     connection.close();    }catch(Exception ex){       System.out.println(ex);       System.exit(0);    }  } } 在确认JDK这边没有问题后我把注意力转向eclipse的设置 (eclipse-->window-->preferences-->java-->installed JREs) .JPG) 
 edit  
 小错误就在这!取消Use Default  system libraries    把数据库驱动所在的jar包加入  
 ok!保存设置重启eclipse,运行测试程序成功!  
 
  |