Javaweb网上商城项目实战(20)添加商品到购物车

原理分析

Javaweb网上商城项目实战(20)添加商品到购物车

具体实现

准备工作

有些准备工作在之前已经实现了,这里强调一下,如果没改的自己改一下,已经完成了的也检查一下。

1、在product_list.jsp中修改链接

 

2、product_info.jsp中自己设置form表单,设置form method,action,设置隐藏域向服务端传递商品pid




	<%@ include file="/jsp/header.jsp"%>


	
${product.pname}
编号:${product.pid}
商城价: ¥:${product.shop_price}元/份 市场价: ¥${product.market_price}元/份
促销: 限时抢购
白色
购买数量:
<%--加入到购物车 --%>  收藏商品
商品介绍

${product.pdesc}

<%@include file="/jsp/footer.jsp"%>%MINIFYHTMLb548b1bd9eb943f48590a848291801243%%MINIFYHTMLb548b1bd9eb943f48590a848291801244%

[v_notice]PS:如果一个表单中有多个按钮,点击不同的按钮提交到不同路径,可以这样实现
var form= document.getElementById(“formId”);
form.submit();[/v_notice]

创建CartServlet

完成添加购物车的addCartItemToCart方法

// 添加购物项到购物车
public String addCartItemToCart(HttpServletRequest req, HttpServletResponse resp) throws Exception {
	// 从session获取购物车
	Cart cart = (Cart) req.getSession().getAttribute("cart");
	if (null == cart) {
		// 如果获取不到,创建购物车对象,放在session中
		cart = new Cart();
		req.getSession().setAttribute("cart", cart);
	}
	// 如果获取到,使用即可
	// 获取到商品id,数量
	String pid = req.getParameter("pid");
	int num = Integer.parseInt(req.getParameter("quantity"));
	// 通过商品id查询都商品对象
	ProductService ProductService = new ProductServiceImp();
	Product product = ProductService.findProductByPid(pid);
	// 获取到待购买的购物项
	CartItem cartItem = new CartItem();
	cartItem.setNum(num);
	cartItem.setProduct(product);

	// 调用购物车上的方法
	cart.addCartItemToCar(cartItem);

	// 重定向到/jsp/cart.jsp
	resp.sendRedirect("/store_v1/jsp/cart.jsp");
	// return "/jsp/cart.jsp";
	return null;
}

修改web.xml


  
  CartServlet
  CartServlet
  com.geekerstar.store.web.servlet.CartServlet


  CartServlet
  /CartServlet

获取购物车上商品信息

在cart.java中增加

//返回MAP中所有的值
public Collection getCartItems(){
	return map.values();
}

在cart.jsp中做如下修改


	
订单详情
图片 商品 价格 数量 小计 操作
${item.product.pname} ¥${item.product.shop_price} ¥${item.subTotal} 删除
登录后确认是否享有优惠   赠送积分: ${cart.total}  商品金额: ¥${cart.total}元

效果演示

首先登陆我们的账户,此时购物车为空

Javaweb网上商城项目实战(20)添加商品到购物车

然后我们添加几个商品到购物车,如下图所示,添加成功

Javaweb网上商城项目实战(20)添加商品到购物车

至此完成了购物车的添加功能

源码下载

[dm href=’https://www.jikewenku.com/product/1700.html’]下载地址[/dm]

导航目录

[dm href=’https://www.jikewenku.com/project/2786.html’]查看导航[/dm]

本站所有文章均来自互联网,如有侵权,请联系站长删除。极客文库 » Javaweb网上商城项目实战(20)添加商品到购物车
分享到:
赞(0)

评论抢沙发

评论前必须登录!