coriander999 2022-03-17 21:14 采纳率: 100%
浏览 31
已结题

DAO模式中通过id号来查找客户

问题遇到的现象和发生背景

我已经写好了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);
}

}

运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果
  • 写回答

0条回答 默认 最新

    报告相同问题?

    问题事件

    • 系统已结题 3月25日
    • 创建了问题 3月17日

    悬赏问题

    • ¥15 soildworks装配体的尺寸问题
    • ¥100 有偿寻云闪付SDK转URL技术
    • ¥30 基于信创PC发布的QT应用如何跨用户启动后输入中文
    • ¥20 非root手机,如何精准控制手机流量消耗的大小,如20M
    • ¥15 远程安装一下vasp
    • ¥15 自己做的代码上传图片时,报错
    • ¥15 Lingo线性规划模型怎么搭建
    • ¥15 关于#python#的问题,请各位专家解答!区间型正向化
    • ¥15 unity从3D升级到urp管线,打包ab包后,材质全部变紫色
    • ¥50 comsol温度场仿真无法模拟微米级激光光斑