// 实现添加购物车功能 @RequestMapping("/caraction") public String caraction(HttpServletRequest req) { // 因为可能从不同的位置进入到此servlet,所以我们可以做一些标识,通过标识来执行不同的代码块 String type = req.getParameter("type"); int fid = 0; String result = ""; if (type == null || type.equals("")) // 直接进入到购物车的时候 { String id = req.getParameter("id"); if (id != null && !id.equals("")) { fid = Integer.parseInt(id); } req.getSession().setAttribute("id", fid); } else // 先执行登录后,再执行的代码 fid = (Integer) req.getSession().getAttribute("id"); Tuser tu = (Tuser) req.getSession().getAttribute("tu"); // 如果获取的tu为空,表示没有用户登录,即没有用户登录的时候,则不可以进入到购物车 if (tu == null) { // 既然没有登录过,那么就可以让用户此时进入到登录页面 req.setAttribute("result", "请先登录,再进入购物车"); // req.getRequestDispatcher("login.jsp").forward(req, resp); result = "login.jsp"; } else { List<Flower> f = new ArrayList<Flower>(); try { f = userService.addCar(fid, tu); req.setAttribute("f", f); // req.getRequestDispatcher("shoppingcart.jsp").forward(req, resp); result = "shoppingcart.jsp"; } catch (SQLException e) { e.printStackTrace(); } } return result; }