jsp做个购物车

把点击了放入购物车的信息放入一个list数组,再用session.setAttribute存储,这个应该分开一个页面来写吧?那怎么样能存多个数据啊~我写的好像进下这个页面就会被覆盖一次~根本存不了几次
我这样写的
<%
int wareid=Integer.parseInt(request.getParameter("wareid"));
String warename=request.getParameter("warename");
int amount=1;
double price=Double.parseDouble(request.getParameter("price"));
List<Ware> list=new ArrayList<Ware>();
//List<Integer> list=new ArrayList<Integer>();
list.add(new Ware(wareid,warename,amount,price));
session.setAttribute("wares",list);
%>
难道我的整体思路也出了问题~
还真没什么人来回答,可我自己解决了~在登录的时候把数组new出来就不会被覆盖了~好像没人帮我解决哦~

第1个回答  2008-12-09
存几次是啥意思?

=========================
List<Ware> list =(List<Ware>)session.getAttribute("wares");
if(list == null)
{
list=new ArrayList<Ware>();
}

=================================
static 可以修饰List
但是我估计不是static的问题
是session的"wares"指向的对象被替换掉
按理你这个代码应该是只能放一个物品~
但是你又说是被替换掉~应该是一直存储第一次放入的物品~
第2个回答  2008-12-09
你把list弄一个静态试一下,
相似回答