购物车关键代码

day_moon 2015-11-21 12:13:42

在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不是空的,这样做有什么的作用,得到的是什么啊(得到的是商品订单详细吗)?
...全文
152 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
day_moon 2015-11-21
  • 打赏
  • 举报
回复
在cartBiz的实现类中(红色部分),cart.getOrderItems它不是空的吗,并没有向里面附值啊?怎么会这样cart.getOrderItems()就能得到购物信息?真心不懂。
dracularking 2015-11-21
  • 打赏
  • 举报
回复
1. 如果为空,它后面有判断 2. 得到的是orderItems,也就是所有商品订单的一个map

51,396

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧