你写个类,直接在main里测试看看是什么问题,就可以了

解决方案 »

  1.   

    错误提示是什么..jar文件要放到common/lib下去..
      

  2.   

    谢谢。是虚拟主机。请看一下:
    http://ww.pavo.cn/jspinfo.jsp这个里面的org.apache.catalina.jsp_classpath里有你提到的JAR吗?
      

  3.   

    页面:http://ww.pavo.cn/testMysql.jsp
    代码:
    (很基本的读取数据,就是驱动那块不成)
    <%@ page contentType="text/html; charset=utf-8" language="java" import="java.sql.*"%>
    <html>
    <body>
    从Mysql中读取数据:<hr>
    <table border=1>
    <tr><td>ID</td><td>Name</td><td>Age</td><td>Nation</td><td>Email</td><td>Others</td></tr>
    <%
       //Class.forName("com.caucho.jdbc.mysql.Driver").newInstance();
       Class.forName("org.gjt.mm.mysql.Driver").newInstance();
       //Connection con=java.sql.DriverManager.getConnection("jdbc:mysql_caucho://localhost:3306/gavin","gavin","wwpavo");
       Connection con=java.sql.DriverManager.getConnection("jdbc:mysql://localhost:3306/gavin","gavin","wwpavo");
       Statement stmt=con.createStatement();
        ResultSet rst=stmt.executeQuery("select * from db1 order by `ID` DESC;");
        while(rst.next())
        {
        out.println("<tr>");
    /*
        out.println("<td>"+new String(rst.getString("id").getBytes("ISO-8859-1"),"gb2312")+"</td>");
        out.println("<td>"+new String(rst.getString("username").getBytes("ISO-8859-1"),"gb2312")+"</td>");
        out.println("<td>"+new String(rst.getString("ip").getBytes("ISO-8859-1"),"gb2312")+"</td>");
        out.println("<td>"+new String(rst.getString("comment").getBytes("ISO-8859-1"),"gb2312")+"</td>");
    */
        out.println("<td>"+new String(rst.getString("ID").getBytes("ISO-8859-1"),"utf-8")+"</td>");
       out.println("<td>"+new String(rst.getString("name").getBytes("ISO-8859-1"),"utf-8")+"</td>");
    //out.println("<td>"+rst.getString("name")+"</td>");
        out.println("<td>"+new String(rst.getString("age").getBytes("ISO-8859-1"),"utf-8")+"</td>");
        out.println("<td>"+new String(rst.getString("nation").getBytes("ISO-8859-1"),"utf-8")+"</td>");
        out.println("<td>"+new String(rst.getString("email").getBytes("ISO-8859-1"),"utf-8")+"</td>");
        out.println("<td>"+new String(rst.getString("others").getBytes("ISO-8859-1"),"utf-8")+"</td>");
        out.println("</tr>");
        }
     
     
        rst.close();
        stmt.close();
        con.close();
        %>    
    </table>
    </body>
    </html>错误提示:
    HTTP Status 500 - --------------------------------------------------------------------------------type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception javax.servlet.ServletException: org.gjt.mm.mysql.Driver
    org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:845)
    org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:778)
    org.apache.jsp.testMysql_jsp._jspService(testMysql_jsp.java:90)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    root cause java.lang.ClassNotFoundException: org.gjt.mm.mysql.Driver
    org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1340)
    org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1189)
    org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:148)
    org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:69)
    java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
    java.lang.Class.forName0(Native Method)
    java.lang.Class.forName(Class.java:141)
    org.apache.jsp.testMysql_jsp._jspService(testMysql_jsp.java:51)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    note The full stack trace of the root cause is available in the Apache Tomcat/5.0.29 logs.
    --------------------------------------------------------------------------------Apache Tomcat/5.0.29
      

  4.   

    mysql版本是多少?
    你可以换个驱动试试
      

  5.   

    mysql 4.0.22
    换什么驱动呢。谢谢
      

  6.   

    没有找到mysql的驱动,把mysql的驱动程序放到WEB-INF/lib里就行了
      

  7.   

    mysql的驱动 mm.mysql-2.0.4-bin.jar(org.gjt.mm.mysql.Driver)
      

  8.   

    把驱动放common\lib下,去网上搜一下mm.mysql-2.0.4-bin.jar,这个应该够用了
    记得设置path classpath  java_home,catalina_home四个环境变量
    CATALINA_HOME  D:\Tomcat 5.0
    classpath      D:\Tomcat 5.0\common\lib\servlet-api.jar;D:\j2sdk1.4.2\lib\tools.jar;D:\j2sdk1.4.2\lib\dt.jar;D:\Tomcat 5.0\common\lib\mysqldriver.jar;D:\Tomcat 5.0\common\lib\jsp-api.jar
    JAVA_HOME      D:\j2sdk1.4.2
    Path           %SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;D:\j2sdk1.4.2\bin;
    TOMCAT_HOME    D:\tomcat 5.0
    这个是我的
      

  9.   

    把驱动放common\lib下,去网上搜一下mm.mysql-2.0.4-bin.jar,这个应该够用了
    记得设置path classpath  java_home,catalina_home四个环境变量
    CATALINA_HOME  D:\Tomcat 5.0
    classpath      D:\Tomcat 5.0\common\lib\servlet-api.jar;D:\j2sdk1.4.2\lib\tools.jar;D:\j2sdk1.4.2\lib\dt.jar;D:\Tomcat 5.0\common\lib\mysqldriver.jar;D:\Tomcat 5.0\common\lib\jsp-api.jar
    JAVA_HOME      D:\j2sdk1.4.2
    Path           %SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;D:\j2sdk1.4.2\bin;
    TOMCAT_HOME    D:\tomcat 5.0
    这个是我的
      

  10.   

    谢谢~ 我是虚拟主机,所以没办法操作tomcat.mm.mysql-2.0.4-bin.jar已经按指示放到WEB-INF/lib/里面了,但是还是那个错误。网站是可以浏览文件目录的,请帮忙看一下:
    http://ww.pavo.cn/WEB-INF/lib/
      

  11.   

    String CLASSFORNAME="com.mysql.jdbc.Driver";
        String SERVANDDB="jdbc:mysql://localhost:3306/数据库名?useUnicode=true&characterEncoding=GB2312";
        String USER="用户名";
        String PWD="密码";
    然后再用getconnection得到链接数据库试一下吧
      

  12.   

    你这个可能是环境变量的classpath没设好吧,要指到驱动jar文件