com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: Unknown database 'students'

这个怎么解决啊?我已经建好了数据库,数据表,可是运行显示还是不行~~~求解决!!!
package test;
import java.io.*;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class DBServlet extends HttpServlet {

static private Connection con=null;
static private Statement st=null;
static private ResultSet rs=null;

public static Connection getConnection() {
try {
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection("jdbc:MySQL://localhost:3306/student?user=root&password=juan&characterEncoding=utf-8");

if (con != null) {
System.out.println("连接成功!!");
} else {
System.out.println("失败!!");
}

} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
return con;
}
public static ResultSet getResultSet(String sql){
con=getConnection();
try{
st=con.createStatement();
rs=st.executeQuery(sql);
}catch(SQLException e){e.printStackTrace();}
return rs;
}

public void doPost(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException{
response.setContentType("text/html;charset=utf-8");

PrintWriter out=response.getWriter();
String sql="select *from students";

rs=getResultSet(sql);
try{

out.println("<table border='1' align='center'>");
out.println("<tr>");
out.println("<td>"+"学号"+"</td>");
out.println("<td>"+"姓名"+"</td>");
out.println("<td>"+"性别"+"</td>");
out.println("<td>"+"年龄"+"</td>");
out.println("</tr>");
while(rs.next()){
out.println("<tr>");
out.println("<td>"+rs.getInt("ID")+"</td>");
out.println("<td>"+rs.getString("name")+"</td>");
out.println("<td>"+rs.getString("sex")+"</td>");
out.println("<td>"+rs.getInt("age")+"</td>");
out.println("</tr>");
}
out.println("</table>");
}catch(SQLException e){e.printStackTrace();}
}

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}}

第1个回答  2012-04-12
这里写错了
while(rs.next()){
out.println("<tr>");
out.println("<td>"+rs.getInt(1)+"</td>");
out.println("<td>"+rs.getString(2)+"</td>");
out.println("<td>"+rs.getString(3)+"</td>");
out.println("<td>"+rs.getInt(4)+"</td>");
out.println("</tr>");
}
确认顺序没有问题 就OK了本回答被网友采纳
第2个回答  2012-03-31
尝试单元测试。在main方法调用每个方法,观察结果。
第3个回答  2012-03-31
用select * from student.students试试
第4个回答  2012-03-31
student 写错了。
大家正在搜