session购物车,基于spring,struts,mybatis实现增加购物车,删除,修改购物车

建立商品entity和订单entity

/*
     * 李琪
     * 添加购物车
     * */
    public void addcar() {
        request = ServletActionContext.getRequest();
        String goods_id1 = request.getParameter("goods_id");
        Goods list1 = shoppingService.queryById(goods_id1);
        List<DingDan> list = (List<DingDan>)request.getSession().getAttribute("goods_dingdan");
        int i = 0;
        double p = 0;
        if(list==null){
            List<DingDan> dingdans = new ArrayList<>();
            DingDan dan = new DingDan();
            dan.setGoods_id(list1.getGoods_id());
            dan.setGoods_name(list1.getGoods_name());
            dan.setNum(1);
            dan.setGoods_price(list1.getGoods_price());
            dan.setZongjia(list1.getGoods_price());
            dingdans.add(dan);
            System.out.println(dingdans.get(0).getGoods_name());
            request.getSession().setAttribute("goods_dingdan", dingdans);
        }else{
            DingDan dd = new DingDan();
                    for (int j = 0; j < list.size(); j++) {
                        DingDan ding =list.get(j);
                        /*System.out.println("***********");
                        System.out.println(ding.getFood_name());
                        System.out.println("***********");*/
                        if(list1.getGoods_name().equals(ding.getGoods_name())){
                            list.remove(j);
                            i = ding.getNum();
                            p = ding.getZongjia();
                            ding.setNum(i+1);
                            ding.setZongjia(p+list1.getGoods_price());
                            list.add(j, ding);
                            //i=0;
                            dd=null;
                            break;
                    }else{
                        dd.setGoods_name(list1.getGoods_name());
                        dd.setGoods_id(list1.getGoods_id());
                        dd.setNum(i+1);
                        dd.setGoods_price(list1.getGoods_price());
                        dd.setZongjia(list1.getGoods_price());
                        }
                 }
                    if(dd!=null){
                        list.add(dd);
                    }
                    System.out.println(list.get(0).toString());
                    request.getSession().setAttribute("goods_dingdan", list);
        }
    }

/*
     * 李琪
     * 移除购物车
     * */
        public String removeding() {
            request = ServletActionContext.getRequest();
            String id = request.getParameter("goods_id");
            List<DingDan> list = (List<DingDan>) request.getSession().getAttribute("goods_dingdan");
            for (int i = 0; i < list.size(); i++) {
                DingDan shop = list.get(i);
                if (id.equals(shop.getGoods_id())) {
                    list.remove(i);
                    shop.setNum(shop.getNum() - 1);
                    list.add(i, shop);
                }
            }
            request.getSession().setAttribute("goods_dingdan", list);

            return "lookcar";

        }

    /*
         * 李琪
         * 修改购物车
         * */
        public String editding() {
            request = ServletActionContext.getRequest();
            String id = request.getParameter("goods_id");
            List<DingDan> list = (List<DingDan>) request.getSession().getAttribute("goods_dingdan");
            for (int i = 0; i < list.size(); i++) {
                DingDan shop = list.get(i);
                if (id.equals(shop.getGoods_id())) {
                    list.remove(i);
                    shop.setNum(shop.getNum() + 1);
                    list.add(i, shop);
                }
            }
            request.getSession().setAttribute("goods_dingdan", list);
            
            return "lookcar";
            
        }

前端是用jstl遍历session

猜你喜欢

转载自blog.csdn.net/liqi939597/article/details/84060868
今日推荐