问题遇到的现象和发生背景
我已经写好了dao中的实现类,现在卡在了findById.Servlet,如何调用实现类的方法来实现这个功能
问题相关代码,请勿粘贴截图
// 按id查询客户记录 CustomerDaoImpl.Servlet
public Customer findById(int id) throws DaoException {
String sql = "use shop" + "SELECT id,name,email,balance"
+ " FROM customers WHERE id =?";
Customer customer = new Customer();
try (Connection conn = getConnection();
PreparedStatement pstmt = conn.prepareStatement(sql)) {
pstmt.setInt(1, id);
try (ResultSet rst = pstmt.executeQuery()) {
if (rst.next()) {
customer.setId(rst.getInt("id"));
customer.setName(rst.getString("name"));
customer.setEmail(rst.getString("email"));
customer.setBalance(rst.getDouble("balance"));
}
}
} catch (SQLException se) {
return null;
}
return customer;
}
//findById.Servlet
@WebServlet("/findById.do")
public class findByIdServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
int cid = Integer.parseInt(request.getParameter("cid"));
Customer customer = new Customer();
CustomerDao dao = new CustomerDaoImpl();
String message = null;
try { //从这里开始就不知道怎么写了
Customer success = dao.findById(cid); //从jsp页面输入的id号
if (success!=null) {
request.getSession().setAttribute("customers", success);
response.sendRedirect("displayCustomers.jsp");
message = "<li>该客户的信息为:</li>";
} else {
message = "<li>未找到该用户!</li>";
}
} catch (Exception e) {
System.out.println(e);
message = "<li>未找到该用户哦</li>" + e;
}
request.setAttribute("result", message);
RequestDispatcher rd = getServletContext().getRequestDispatcher("/displayCustomer.jsp");
rd.forward(request, response);
}
}