JSP 做网上商城系统时 在购物车上出了问题

应该是点击商品的购买按钮就添加进购物车,并在下一页面显示所有购买的商品的信息。现在的问题是,在页面中只显示一条商品信息,有时候还不是我购买的商品,希望有高手解决下,有加分... 应该是点击商品的购买按钮就添加进购物车,并在下一页面显示所有购买的商品的信息。现在的问题是,在页面中只显示一条商品信息,有时候还不是我购买的商品,希望有高手解决下,有加分。不知道是不是这段有问题
//用session控制只有一个购物车
Cart cart=(Cart)request.getSession().getAttribute("c");
if(cart==null){
cart=new Cart();
request.getSession().setAttribute("c", cart);
}
因为我把这段用Cart cart=new Cart();替代时,起码能正确显示我最近购买的一条商品的信息。
我是用哈希图来存储要购买的商品信息的,用session控制只有一个cart购物车对象,每次点击购买就通过哈希图的put方法将商品信息存进哈希图,迭代得到哈希图的所有Key:Iterator it=hm.keySet().iterator(); 将得到的GoodsBean对象放入ArrayList:
Cart cart=(Cart)request.getSession().getAttribute("c");
if(cart==null){
cart=new Cart();
request.getSession().setAttribute("c", cart);
}

cart.addgood(goodid, "1");
ArrayList al=cart.showcart();
request.setAttribute("mycart",al);
request.getRequestDispatcher("showcart.jsp").forward(request, response);
展开
 我来答
zhongfc2009
2010-11-24 · TA获得超过100个赞
知道答主
回答量:127
采纳率:0%
帮助的人:87.5万
展开全部
你应该用一个集合类型,比如List来存储你的商品信息。在每次添加新商品的时候,就往这个集合里面添加商品信息!
例如:
List shoplist = new ArrayList();
request.getSession().setAttribute("c", shoplist );
这里做初始化的购物车。
如果添加了新商品,
List lis = request.getSession().setAttribute("c");
lis.add(cart)
request.getSession().setAttribute("c", lis);
这样说LZ你明白了吗?
百度网友2ffcc2d90
2010-11-24 · 超过17用户采纳过TA的回答
知道答主
回答量:62
采纳率:0%
帮助的人:45.8万
展开全部
我怀疑是不是因为你session里有别的C对象,重复了
如果不是的话,那么代码就出现在Cart构建的时候了
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
达达龙学习屋
2010-11-24 · TA获得超过117个赞
知道小有建树答主
回答量:129
采纳率:0%
帮助的人:91.7万
展开全部
你新new一个没有给他赋值必定为NULL的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
bozla
2010-11-24
知道答主
回答量:26
采纳率:0%
帮助的人:20.7万
展开全部
购物车用session这玩意?你们服务器能受的了吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式