欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

jsp中用session写简单购物车

程序员文章站 2022-03-15 09:45:33
...

流程:
1、读取商品id
2、通过id查找出商品对象
3、建立购物车对象(属性包括商品和数量)
4、将步骤2中查找出的对象装进购物车对象中,并默认添加数量为1个。
5、建立一个购物车list,判断list是否为空。第一次进入肯定为空,那么就new一个list,然后list.add()。这中间包括一个判断过程,假如添加两件相同的商品,那么商品的数量要增加,价格要增加。
     判断是否是同一个商品时,可以通过id是否相同来判断。

 

 

 

	request.setCharacterEncoding("UTF-8");
	response.setCharacterEncoding("UTF-8");

	String id = request.getParameter("id");

	ProDAO pDao = new ProDAO();
	Product pro = pDao.findById(id);
	
	ShopCar sc = new ShopCar();
	sc.setPro(pro);
	sc.setNum(1);


		List<ShopCar> shopList = (List<ShopCar>) session.getAttribute("shopList");
		if (shopList == null) {
			shopList = new ArrayList<ShopCar>();
		}
		boolean flag = false;
		for (ShopCar s : shopList) {
			if (s.getPro().getId() == Integer.valueOf(id)) {
				flag = true;
				s.setNum(s.getNum() + 1);
				s.getPro().setPrice(s.getPro().getPrice() + s.getPro().getPrice());
				break;
			}
		}
		if (!flag) {
			shopList.add(sc);
		}

	   session.setAttribute("shopList", shopList);
	   response.sendRedirect("car.jsp");

 

 

其中需要注意的就是是否为null的判断。如果为null就new一个。

 

 

 

个人见解,大家发现有问题的话请留言指教。

相关标签: JSP