为什么使用
HttpSession session = req.getSession();
System.out.println(session.isNew());
每次都得到新的session,输出true。而不是在第二次请求时,返回之前创建的session,输出false
你是在跨域中出现的问题吗
// 获取请求的参数 商品编号
int id = WebUtils.parseInt(req.getParameter("id"), 0);
// 调用 bookService.queryBookById(id):Book 得到图书的信息
Book book = bookService.queryBookById(id);
// 把图书信息,转换成为 CartItem 商品项
CartItem cartItem = new CartItem(book.getId(),book.getName(),1,book.getPrice(),book.getPrice());
// 调用 Cart.addItem(CartItem);添加商品项
HttpSession session = req.getSession();
System.out.println(session.getId());
// resp.addCookie(new Cookie("session",session.getId()));
System.out.println(session.isNew());
Cart cart = (Cart) session.getAttribute("cart");
if (cart == null) {
cart = new Cart();
session.setAttribute("cart",cart);
}
cart.addItem(cartItem);
// System.out.println(cart);
// System.out.println("请求头 Referer 的值:" + req.getHeader("Referer"));
// 重定向回原来商品所在的地址页面
resp.sendRedirect(req.getHeader("Referer"));