JavaWeb——Day17_1

*8.Estore_添加商品

-添加商品(文件上传)
index.jsp -- 提供 添加商品
addProd.jsp -- 提供添加商品的表单,这个表单应该是文件上传的表单,其中允许上传商品图片
AddProdServlet -- 实现文件上传,将商品的图片上传到服务器中.并且向数据库的商品表中增加一条记录
Service -- 添加商品
Dao -- 添加商品信息的方法





*9.Estore_商品列表_商品详细信息

商品列表
index.jsp -- 提供商品列表
ProdListServlet -- 调用Service中查询所有商品的方法,查到后存入request域带到页面展示
prodList.jsp -- 从request域中拿出所有的商品做展示





查看商品详情
在商品列表页面中点击图片时,查看商品的详情
ProdInfoServlet 根据商品id查询商品信息,带到页面显示
ProdService 提供根据id查询商品的方法
ProdDao 提供根据id查询商品的方法
prodInfo.jsp页面展示





*10.Estore_购物车1

cookie,session,数据库都可以来实现!

加入购物车
在商品详细信息页面中点击加入购物车,将商品加入购物车
设置监听器,在Session创建时,就将cartmap加入到session中
AddOrderServlet -- 根据id查找商品,存入购物车,如果购物车中还不存在这个商品,则存入,数量为1,如果已经存在则在原有数量上+1
cart.jsp -- 遍历购物车map,遍历cartmap显示当前用户所有的购物车信息



<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
  	<script type="text/javascript">
  		function changeNum(id,obj,oldnum){
  			if(!/^[1-9]\d*$/.test(obj.value)){
  				alert("购买数量必须为正整数!");
  				obj.value=oldnum;
  				return;
  			}
  			window.location.href="/ChangeCartServlet?id="+id+"&buynum="+obj.value;
  		}
  	</script>
  </head>
  <body style="text-align: center;" >
  	<h1>我的购物车</h1>
  	<div align="right">
  		<a href="/ProdListServlet">继续购物</a>
  		<a href="/ClearCartServlet">清空购物车</a>
  		<a href="/addOrder.jsp"><img src="/img/gotoorder.bmp"/></a>
  	</div>
  	
  	<hr>
  	<c:if test="${empty sessionScope.cartmap}">
  		<h2><a href="/ProdListServlet">购物车空空如也,请先去挑点东西吧~~~</a></h2>
  	</c:if>
  	<c:if test="${not empty sessionScope.cartmap}">
		<table width="100%" border="1" style="text-align: center">
			<tr>
				<th>缩略图</th>
				<th>商品名称</th>
				<th>商品种类</th>
				<th>商品单价</th>
				<th>购买数量</th>
				<th>库存状态</th>
				<th>总价</th>
				<th>删除</th>
			</tr>
			<c:set var="money" value="0" />
			<c:forEach items="${sessionScope.cartmap}" var="entry">
				<tr>
					<td><img src="/ImgServlet?imgurl=${entry.key.imgurls }"/></td>
					<td>${entry.key.name }</td>
					<td>${entry.key.category }</td>
					<td>${entry.key.price }元</td>
					<td><input type="text" value="${entry.value }" style="width: 30px" οnchange="changeNum('${entry.key.id }',this,${entry.value })"/>件</td>
					<td>
						<c:if test="${entry.value<=entry.key.pnum}">
							<font color="blue">有货</font>
						</c:if>
						<c:if test="${entry.value>entry.key.pnum}">
							<font color="red">缺货</font>
						</c:if>
					</td>
					<td>
						${entry.key.price * entry.value }元
						<c:set var="money" value="${money + entry.key.price * entry.value }"/>
					</td>
					<td>
						<a href="/DelCartServlet?id=${entry.key.id }">删除</a>
					</td>
				</tr>
			</c:forEach>
		</table>
		<div align="right">
			<font color="red" size=6">总价:${money }元</font>
		</div>
  	</c:if>
  </body>
</html>
DeleteCartServlet:





购买数量的校验!


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值