Servlet JDBC错 误 servletjdbcexceptionmysqljava 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 把try ,catch块去掉,然后看服务器运行时报什么错。 你的第一个try catch块,捕捉了异常之后没有做任何处理,至少应该加一句打印异常信息的语句,还有就是可以看一下程序运行的后台报的什么错误信息,你的代码好像没有对数据库连接进行关闭,一点点来,一步步的先找到错误的地方。打印捕捉到的错误信息,查看后台报错提示。再分析。 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 { }} java 乱码问题 急,求大神 关于resultset 封装调用 动态数组问题! 如何删除一条记录? 做这个网站需要多少钱? 在eclipse下,启动tomcat会出现这样的错误 mysql备份恢复问题 javascript如何调用servlet中的参数? 关于JSWDK与TOMCAT Unable to compile class for JSPNote: sun.tools.javac.Main has been deprecated 点击button添加了 <form:input/>,html代码有添加,但页面无效果也不显示 支付宝接口即时到账问题 请教select下拉框问题
还有就是可以看一下程序运行的后台报的什么错误信息,你的代码好像没有对数据库连接进行关闭,
一点点来,一步步的先找到错误的地方。
打印捕捉到的错误信息,查看后台报错提示。再分析。
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 { }}