点击新增用户之后,显示的并不是我新增的用户详情
点击新增用户之后,显示的并不是我新增的用户详情,而是其他的用户,但是看url的参数id确实是新增用户的id
如果从首页点击查看的话,则能正确显示
正在回答
同学你好,这里老师是携带用户id转发到了detail,如:
然后通过detail找到UsersFindByIdServlet类,如:
在该类中,通过id调用findById查询出用户并转发到detail.jsp页面。
如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 获取要添加的用户数据 String username = request.getParameter("username"); String userpass = request.getParameter("userpass"); String nickname = request.getParameter("nickname"); String age = request.getParameter("age"); String gender = request.getParameter("gender"); String email = request.getParameter("email"); String phone = request.getParameter("phone"); // 根据用户数据创建一个用户对象 Users user = new Users(username, userpass, nickname, Integer.parseInt(age), gender, phone,email, new Date(), new Date(), new Date(), 0); //将用户添加到数据库中 user=usersDAO.addUser(user); //查看刚新增的用户数据 request.getSession().setAttribute("user", user); request.getRequestDispatcher("detail.jsp").forward(request, response); }
doPost()这样写解决了,新增了request.getSession().setAttribute("user", user);
如果像老师在课程里写的那样,不是没有将user对象传给detail页面吗?为什么老师演示的能正确输出到页面呢?
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// 获取要添加的用户数据
String username = req.getParameter("username");
String userpass = req.getParameter("userpass");
String nickname = req.getParameter("nickname");
String age = req.getParameter("age");
String gender = req.getParameter("gender");
String email = req.getParameter("email");
String phone = req.getParameter("phone");
// 根据用户数据创建一个用户对象
Users user = new Users(username, userpass, nickname, Integer.parseInt(age), gender, email, phone, new Date(), new Date(), new Date(), 0);
// 将用户对象添加到数据库中
user = usersDAO.addUser(user);
// 查看刚新增的用户数据
resp.sendRedirect("/detail?id=" + user.getId());
}
- 参与学习 人
- 提交作业 357 份
- 解答问题 8016 个
本阶段将带你学习MySQL数据库,JDBC接口,MyBatis框架等,带你掌握的数据的存放和管理。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星