我写了一个jsp连接程序,但是不知道为什么,就是不行,连接不上,也看不太懂这个jsp的错误码? 请较一下jsp程序员高手,帮帮忙啊!!呵呵!
程序代码是:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<html>
<head>
<title>JSP连接MySQL数据库</title>
</head>
<body>
<%
Class.forName("org.gjt.mm.mysql.Driver").newInstance();
String url="jdbc:mysql://127.0.0.1:3306/test";
String user="root";
String password="windows";
Connection conn=DriverManager.getConnection(url,user,password);
Statement stmt=conn.createStatement();
String sql="select * from userinfo";
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()) { %>
第一个字段内容为:<%=rs.getString(1)%>
<br>
第二个字段内容为:<%=rs.getString(2)%>
<br>
<% }%>
<% out.print("<br>"); %>
<% out.print("数据库操作成功,恭喜你!"); %>
<% rs.close();
stmt.close();
conn.close();
%>
</body>
</html>
程序代码是:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<html>
<head>
<title>JSP连接MySQL数据库</title>
</head>
<body>
<%
Class.forName("org.gjt.mm.mysql.Driver").newInstance();
String url="jdbc:mysql://127.0.0.1:3306/test";
String user="root";
String password="windows";
Connection conn=DriverManager.getConnection(url,user,password);
Statement stmt=conn.createStatement();
String sql="select * from userinfo";
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()) { %>
第一个字段内容为:<%=rs.getString(1)%>
<br>
第二个字段内容为:<%=rs.getString(2)%>
<br>
<% }%>
<% out.print("<br>"); %>
<% out.print("数据库操作成功,恭喜你!"); %>
<% rs.close();
stmt.close();
conn.close();
%>
</body>
</html>
要写成Class.forName("org.gjt.mm.mysql.Driver");
The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException: Exception in JSP: /JDBC_MySQL.jsp:107: </head>
8: <body>
9: <%
10: Class.forName("org.gjt.mm.mysql.Driver").newInstance();
11: String url="jdbc:mysql://127.0.0.1:3306/test";
12: String user="root";
13: String password="windows";
Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:451)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:355)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
root cause javax.servlet.ServletException: org.gjt.mm.mysql.Driver
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:841)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:774)
org.apache.jsp.JDBC_005fMySQL_jsp._jspService(JDBC_005fMySQL_jsp.java:94)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
root cause java.lang.ClassNotFoundException: org.gjt.mm.mysql.Driver
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1386)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1232)
org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:125)
org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:63)
java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
java.lang.Class.forName0(Native Method)
java.lang.Class.forName(Class.java:169)
org.apache.jsp.JDBC_005fMySQL_jsp._jspService(JDBC_005fMySQL_jsp.java:52)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
note The full stack trace of the root cause is available in the Apache Tomcat/5.5.27 logs.
这句是正确的MYSQL数据库的JDBC连接
重新下载个MYSQL的驱动包,记得把包放在lib目录下面,然后把驱动名字换成com.mysql.jdbc.Driver
你可以试试看。
你的问题就是没有把mySql的驱动包放到classpath中去,这个classpath
可以是系统中的,也可是具体某个项目的,推荐在单独的项目中设置
<%@ page contentType="text/html;charset=gb2312" %>
<%@ page import="java.sql.*" %>
<html>
<head>
<title>JSP测试程序</title>
</head>
<body>
<div align="center"><font size="5"><strong>测试示例</strong></font></div><br>
<%Class.forName("com.mysql.jdbc.Driver").newInstance();
String url="jdbc:mysql://cqhgx:3306/test";
String user="rt";
String password="windows";
Connection conn=DriverManager.getConnection(url,user,password);
Statement stmt=conn.createStatement();
String sql="select * from userinfo";
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()) { %>
第一个字段内容为:<%=rs.getString(1)%>
<br>
第二个字段内容为:<%=rs.getString(2)%>
<br>
<% }%>
<% out.print("<br>"); %>
<% out.print("数据库操作成功,恭喜你!"); %>
<% rs.close();
stmt.close();
conn.close();
%>
</body>
</html>
拜托大师们,帮我分析一下,行吗?