购物车关键代码
在AddCartAction类中,代码如下:
//获取用户购买的商品的id 取得用户购买是通过跳转的同时传递用户的ID
int productId = Integer.parseInt(request.getParameter("productId"));
Cart cart = (Cart) request.getSession().getAttribute("cart");
if (cart == null) {
cart = new Cart();
request.getSession().setAttribute("cart", cart);
}
//把商品的ID添加到购物车
Cart newCart = cartBiz.addCart(cart, productId);
request.getSession().setAttribute("cart", newCart);
cartBiz的实现类:
Product product = null;
//通过商品的ID把该商品查询出来
product = productDAO.queryPrdouctByProductId(productId);
//判断商品是否存在
if (product != null) {
//根据商品productId查询出对应的购物信息
Map<String, OrderItem> Item=cart.getOrderItems();
OrderItem oItem = Item.get(productId.toString());
if (oItem == null) {
OrderItem orderItem = new OrderItem();
orderItem.setProduct(product);
orderItem.setAmount(1);
Map<String, OrderItem> orderItems = cart.getOrderItems();
//将查询到的购物商品信息放到Map中,以便前端进行显示
orderItems.put(productId.toString(), orderItem);
} else {
oItem.setAmount(oItem.getAmount() + 1);
}
}
跪求大神!
问题1、在AddCartAction类中,两个红色区域,这样做分别有什么作用啊?cart不是是空的吗?
2、在cartBiz的实现类的红色区域,cart不是空的,这样做有什么的作用,得到的是什么啊(得到的是商品订单详细吗)?