购物车关键代码

day_moon day_moon 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区

在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不是空的,这样做有什么的作用,得到的是什么啊(得到的是商品订单详细吗)?
...全文
评论 2
收藏 已收藏
分享
返回顶部
day_moon
Java 51,407 成员 86,131 内容