我现在作一个程序就是用servlet连接jdbc,并进行查询操作,但是出现了一些问题。
首先我的jdbc连接无问题,在没有用servlet时,即在纯粹的java程序中,能够得到查询结果。
此外,我的servlet所用web服务器的配置也正常,servlet程序均能正常运行。
但是,将二者结合起来却没有结果产生。小弟不知是何原因,请各位大虾多多指教。
我用的web服务器是tomcat4.0,数据库是mysql。
以下是我的源程序:
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.*;
import java.sql.*;
public class TestDB extends HttpServlet{
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException,IOException{
response.setContentType("text/html");
PrintWriter out = response.getWriter();
showResult(request,out);
}
private void showResult(HttpServletRequest request,PrintWriter out){
String sname = request.getParameter("sname");
try
{
Class.forName("org.gjt.mm.mysql.Driver");
String dburl = "jdbc:mysql://localhost/test";
Connection c = DriverManager.getConnection(dburl, "", "");
Statement stat = c.createStatement();
ResultSet result = stat.executeQuery("select Sno * from student");
String Sno = result.getString(1);
result.next();
out.println("<html>");
out.println("<head><title>Result</title></head>");
out.println("<body>");
out.println("<h1>");
out.println("The Students ID is:");
out.println("</h1>");
out.println("<h1>" );
out.println(Sno);
out.println("</h1>");
out.println("</body></html>");
result.close();
}
catch(SQLException e)
{
System.out.println(e);
}
catch(ClassNotFoundException e)
{
System.out.println(e);
}
catch(Exception e)
{
System.out.println(e);}
}
}
错误代码??
String Sno = result.getString(1);
result.next();
这里不会有错吗
while(result.next()){
String Sno = result.getString(1);
}