数据库:    MySQL Server 5.0 
 jsp的服务器:  Tomcat 5.0
 用mysql-connector-java-3.1.8-bin.jar连接。
      将mysql-connector-java-3.1.8-bin.jar放在\Tomcat 5.0\common\lib下,
      在环境变量中的(classpath)中也添加了此包。
  
我在MySQL上:
     创建了一个数据库(school),一个表teacher(ib,name,address,date)我的 test.jsp:<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
<body>
  <%  Connection con;
      Statement sql;
      ResultSet rs;
      try{ Class.forName("org.git.mm.mysql.Driver").newInstance();}
         catch(ClassNotFoundException e){out.println("class :"+e.getMessage());}
         
      try{ con=DriverManager.getConnection("jdbc:mysql://localhost:3306:school","root","software");
           sql=con.createStatement();
           rs=sql.executeQuery("SELECT *FROM teacher");
           out.print("<table Border=3>");
           out.print("<tr>");
               out.print("<th width=10>"+"id");
               out.print("<th width=10>"+"name");
               out.print("<th width=10>"+"address");
               out.print("<th width=10>"+"date");  
           out.print("</tr>");
           
           while(rs.next())
           { out.print("<tr>");
              String id=rs.getString(1);
                out.print("<td>"+id+"</td>");
              String name=rs.getString(2);
                out.print("<td>"+name+"</td>");
              String address=rs.getString(3);
                out.print("<td>"+address+"</td>");
              String date=rs.getString(4);
                out.print("<td>"+date+"</td>");
             out.print("</tr>");             
           } 
           out.print("</table>");
            con.close();     
         }
       catch(SQLException e2){out.println("SQLState: " + e2.getSQLState());
                             }
  %>
</body>
</html> 问题是没有连接上,抛出的异常是如下:
       class :org.git.mm.mysql.Driver SQLState: 08001 
  希望得到你帮助。

解决方案 »

  1.   

    这下我可糊涂了,
     1。我把("jdbc:mysql://localhost:3306:school","root","software");
       改为:("jdbc:mysql://localhost/school","root","software");不要端口号却连接了。
      
     2。假如是这样的话:try{ Class.forName("org.git.mm.mysql.Driver").newInstance();}
                 会被catch捕获异常,输出结果为:class :org.git.mm.mysql.Driver
     
       而改为:try{ Class.forName("com.mysql.jdbc.Driver").newInstance();}
                 就不会生产异常。
     求救高手来解释一下,小可不才!~` 
      

  2.   

    org.git.mm.mysql.Driver是旧的驱动类名,
    现在通常用com.mysql.jdbc.Driver通常Class.forName("com.mysql.jdbc.Driver");就行了
    不必Class.forName("com.mysql.jdbc.Driver").newInstance();("jdbc:mysql://localhost:3306:school","root","software");
    应该是("jdbc:mysql://localhost:3306/DBName","username","password")你再试试
      

  3.   

    楼上的是正解。
    对于mysql-connector-java-3.1.8-bin.jar驱动程序,你需要使用com.mysql.jdbc.Driver进行注册。