jsp连接数据库出现HTTP Status 500 -错误 代码如下

<%@ page language="java" import="java.util.*" pageEncoding="gb2312"%>
<%@ page import="java.sql.*" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text1/html; charset=UTF-8">
<title>JSP查询数据操作示例</title>
</head>
<body>
<%
Connection conn = null;
Statement stat = null;
ResultSet rs = null;
//加载数据库驱动类
//Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
Class.forName("com.mysql.jdbc.Driver").newInstance();
//数据库连接URL
//String url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=Student";
String url = "jdbc:mysql://localhost:3306/Student?useUnicode=true&characterEncoding=utf8";
//数据库用户名
String user = "root";
//数据库密码
String password = "root";
//根据数据库参数取得一个数据库连接
conn = DriverManager.getConnection(url, user, password);
stat = conn.createStatement();
String sql = "select * from userinfo";
rs = stat.executeQuery(sql);
%>
<table width="260" cellSpacing=0 height="12" style="font-size:10pt;border: 1pt">
<tr style="border:solid 1pt">
<td style="border:solid 1pt">编号</td>
<td style="border:solid 1pt">姓名</td>
<td style="border:solid 1pt">年龄</td>
<td style="border:solid 1pt">性别</td>
</tr>
<%
while(rs.next())
{
out.print("<tr style='border:solid 1pt'>");
out.print("<td style='border:solid 1pt'>"+rs.getInt("id")+"</td>");
out.print("<td style='border:solid 1pt'>"+rs.getString("name")+"</td>");
out.print("<td style='border:solid 1pt '>"+rs.getInt("age")+"</td>");
out.print("<td style='border:solid 1pt'>"+rs.getString("gender")+"</td>");
out.print("</tr>");
}
if(rs != null)
{
rs.close();
}
if(stat!=null)
{
stat.close();
}
if(conn!=null)
{
conn.close();
}
%>
</table>
</body>
</html>

要加载驱动包,并且看看路径是你写的com.microsoft.jdbc.sqlserver.SQLServerDriver",还是我下面这个例子中的,,请参考以下,或者把错误代码贴出来看一下
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
<%@ page import="java.util.*" %>
<html>
<body>
<%
Class.forName("org.gjt.mm.mysql.Driver").newInstance();
String url="jdbc:mysql://localhost:3306/insurance?user=root&password=admin&useUnicode=true";
Connection conn = DriverManager.getConnection(url);
Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from t_gender";
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()) {%>
第一个字段内容为:<%=rs.getString(1)%>
第二个字段内容为:<%=rs.getString(2)%>
<br />
<%}%>
<% out.print("数据库操作成功");%>
<%
rs.close();
stmt.close();
conn.close();
%>

</body>
</html>追问

驱动包加了,错误信息太长了,我截取了一点,就上面的,你看看
org.apache.jasper.JasperException: javax.servlet.ServletException: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown database 'student'

追答

Unknown database 'student'这边只能看出是数据名不存在,检查下MYsql中的数据库

追问

这个地方让我很疑惑,我的数据库明显是有数据库student的,连大小写都一样……

追答

数据库驱动类的路径再看下,我的是Class.forName("org.gjt.mm.mysql.Driver").

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-10-16
<%@ page import="com.mysql.jdbc.Driver" %>
把这个引进来本回答被网友采纳
第2个回答  2013-10-16
看了你补充的追问,很明显是数据库名不对,要student,结果无法找到,或权限不对。追问

数据库名是student,我看过,应该没问题,权限不对是什么意思?

追答

找个jdbc的工具,连接一下这个数据库就知道有没有问题了。
权限不对,意味着root无法访问该数据库

第3个回答  2013-10-16
数据库连接有没有问题??驱动包都加进来了没?
相似回答