<%@ page language="java" contentType="text/html; charset=GBK"%>
<%@ page import="java.sql.*" %><html>
  <head>    
    <title>连接SQL</title>
  </head>  
  <body>
  <%
   Connection con = null;
try {

Class.forName("org.gjt.mm.mysql.Driver").newInstance();
String url ="jdbc:mysql://localhost:3306/shop?user=root&password=123456&useUnicode=true&characterEncoding=gbk";
con = DriverManager.getConnection(url);

out.println("<H1>");
out.println("OK<br> con="+con);
out.println("</H1>");
} catch (Exception e) {// 如果出现异常,会打印堆栈里异常的信息
e.printStackTrace();
                out.println("<H1>");
out.println("fuck<br> con="+con);
out.println("</H1>");
} finally {
try {
if (con != null) // 防止出现内存泄露
con.close();
} catch (Exception e) {
e.printStackTrace();
}
}  
   %>    
  </body>
</html>代码是抄书的,希望在JSP中显示是否能连接

解决方案 »

  1.   

    贴出错语
    可能没有引入mysql 的驱动包吧
      

  2.   

    e.printStackTrace(); 
                    out.println(" <H1>"); 
    out.println("fuck <br> con="+con); 
    out.println(" </H1>"); 
    } finally { 
    不是页面上没有异常,而是你用e.printStackTrace();把异常打印在服务器端了,看看web server上的异常信息。
      

  3.   


    Using CATALINA_BASE:   C:\Documents and Settings\jordanlai\.netbeans\5.5.1\apache-tomcat-5.5.17_base
    Using CATALINA_HOME:   C:\Program Files\netbeans-5.5.1\enterprise3\apache-tomcat-5.5.17
    Using CATALINA_TMPDIR: C:\Documents and Settings\jordanlai\.netbeans\5.5.1\apache-tomcat-5.5.17_base\temp
    Using JRE_HOME:        C:\Program Files\Java\jdk1.6.0
    2008-9-26 9:56:52 org.apache.catalina.core.AprLifecycleListener lifecycleEvent
    信息: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jdk1.6.0\bin;.;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\System32;C:\WINDOWS;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\Rational\common;C:\Program Files\MySQL\MySQL Server 5.0\bin
    2008-9-26 9:56:52 org.apache.coyote.http11.Http11BaseProtocol init
    信息: Initializing Coyote HTTP/1.1 on http-8084
    2008-9-26 9:56:52 org.apache.catalina.startup.Catalina load
    信息: Initialization processed in 1078 ms
    2008-9-26 9:56:52 org.apache.catalina.core.StandardService start
    信息: Starting service Catalina
    2008-9-26 9:56:52 org.apache.catalina.core.StandardEngine start
    信息: Starting Servlet Engine: Apache Tomcat/5.5.17
    2008-9-26 9:56:52 org.apache.catalina.core.StandardHost start
    信息: XML validation disabled
    2008-9-26 9:56:54 org.apache.catalina.core.StandardContext start
    严重: Error listenerStart
    2008-9-26 9:56:54 org.apache.catalina.core.StandardContext start
    严重: Context [/jsp-examples] startup failed due to previous errors
    2008-9-26 9:56:54 org.apache.coyote.http11.Http11BaseProtocol start
    信息: Starting Coyote HTTP/1.1 on http-8084
    2008-9-26 9:56:55 org.apache.jk.common.ChannelSocket init
    信息: JK: ajp13 listening on /0.0.0.0:8009
    2008-9-26 9:56:55 org.apache.jk.server.JkMain start
    信息: Jk running ID=0 time=0/47  config=null
    2008-9-26 9:56:55 org.apache.catalina.storeconfig.StoreLoader load
    信息: Find registry server-registry.xml at classpath resource
    2008-9-26 9:56:55 org.apache.catalina.startup.Catalina start
    信息: Server startup in 2719 ms
      

  4.   

    以上程序没有任何错误1.看看有没有加载mysql 驱动。
    2.看出错提示什么, 你上面贴的基本就不是出错信息。
      上面信息只能说明你的apache 正常启动了而已。
      look :  Server startup in 2719 ms  端口号8084java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1055)
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3491)3.连接的用户名和密码是否正确。
    4.升级一下jdk 到1.5以上试下。