解决方案 »

  1.   

    把try ,catch块去掉,然后看服务器运行时报什么错。
      

  2.   

    你的第一个try catch块,捕捉了异常之后没有做任何处理,至少应该加一句打印异常信息的语句,
    还有就是可以看一下程序运行的后台报的什么错误信息,你的代码好像没有对数据库连接进行关闭,
    一点点来,一步步的先找到错误的地方。
    打印捕捉到的错误信息,查看后台报错提示。再分析。
      

  3.   

    import java.io.IOException;
    import java.io.PrintWriter;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;public class QueryByidServlet extends HttpServlet { /**
     * 
     */
    private static final long serialVersionUID = -3825626293497190990L; public QueryByidServlet() {
    super();
    } public void destroy() {
    super.destroy();
    // just puts "destroy log on log" } public void doGet(HttpServletRequest req, HttpServletResponse resp)
    throws ServletException, IOException { resp.setContentType("text/html;charset=gb2312"); PrintWriter pw = resp.getWriter(); String id = req.getParameter("id"); Connection conn = null;
    PreparedStatement pstmt = null; ResultSet rs = null;
    try {
    // Class.forName("com.mysql.jdbc.Driver").newInstance();
    pw.println("创建驱动成功成功");
    conn = DriverManager.getConnection(
    "jdbc:mysql://localhost:3306/bank", "root", "duan");
    pw.println("连接成功");
    String sql = "SELECT * FROM  dept WHERE id = ?";
    pstmt = conn.prepareStatement(sql);
    pstmt.setString(1, id);
    rs = pstmt.executeQuery();
    while (rs.next()) {
    pw.println("" + rs.getString(1));
    pw.println("" + rs.getString(2));
    pw.println("" + rs.getString(3));
    pw.println("" + rs.getString(4));

    }
    pstmt.close();
    conn.close();

    } catch (SQLException e) {
    pw.print(e.getMessage());
    e.printStackTrace();
    } pw.flush();
    pw.close();
    } public void doPost(HttpServletRequest req, HttpServletResponse resp)
    throws ServletException, IOException { resp.setContentType("text/html;charset=gb2312");
    req.setCharacterEncoding("gb2312");
    PrintWriter pw = resp.getWriter(); this.doGet(req, resp);
    pw.flush();
    pw.close();
    } public void init() throws ServletException { }}