当前位置:文档之家› jsp动态网页实用代码

jsp动态网页实用代码

实验2:运用JSP编写动态网页一.选题问题1)编写一个购物车,实现向购物车里添加商品、移除指定商品和清空购物车的功能2)延续实验一二.程序设计1.功能1)购物车:可以实现向购物车里添加指定商品,移除指定商品,清空购物车的基本功能,另外还可以实现简单的结算功能。

2)实验一延续:实现登录、以及同一用户不能重复登录的功能2.技术1)必用技术:JSP内置对象:Request,Response2)选用技术:JSP、JavaScript:Session,application三.数据设计1.含义1)购物车:1>goods.html:用来显示商品清单,选择购买数量,以及添加到购物车2>cart.jsp:用来查看添加到购物车的商品,实现商品的删除,以及返回购物页面继续添加或者跳转到结算页面支付。

使用了request获得信息,session创建表单,调用了自创建的hzsb类。

3>hzsb.jsp:定义了一个“汉子识别”的类,该类可以把从页面中获取的汉子自动转换成单字节编码,并在显示时再转换回来。

4>cost.jsp:结算页面。

负责将购物车里所有的商品及数量显示出来并且进行统计,得到总计钱数。

使用了request获得信息,session创建表单,调用hzsb类。

2)实验一添加功能1>web.html:显示实验一中的页面,其中“登录”超链接到index.jsp;“注册”超链接到count.jsp。

2>index.jsp:登录页面。

用于用户名和密码的输入,输入完成后点击“确定”,可以跳转到rsInfo.jsp页面查看所输入的信息是否保存。

3>rsInfo.jsp:查看页面。

该页面用于显示所输入的信息。

另外该页面调用了response对象,用于显示当前的时间,并用于页面的刷新。

4>count.jsp:“同一用户只能登录一次页面”,即用户一旦登录就不能够通过反复刷新页面造成“多次登录”的假象。

该页面调用了application对象,用于覆盖掉刷新的次数。

2.作用范围1)购物车1>goods.html:作用于“购物车实例”页面,代码如下<html><head><title>购物车实例</title></head><body><h1 align="center">购&nbsp;物&nbsp;车</h1><table width="90%" border="0" align="center" cellpadding="10" cellspacing="1" bgcolor="#CC9900"><tr><td width="30%">&nbsp;书名</td><td width="10%">单价<br></td><td width="30%">出版社<br></td><td width="30%">购买数量<br></td></tr><tr><td bgcolor="#FFFFCC">&nbsp;安徒生童话</td><td bgcolor="#FFFFCC">45.00<br></td><td bgcolor="#FFFFCC">教育出版社<br></td><td bgcolor="#FFFFCC"><form method="post" action="cart.jsp"><input type="text" name="num" value="1" size="3"><input type="submit" name="button6" value="放到购物车"><input type="hidden" name="sm" value="安徒生童话"><input type="hidden" name="cost" value="45.00"><input type="hidden" name="cbs" value="教育出版社"></form></td></tr><tr><td bgcolor="#FFFFCC">&nbsp;格林童话</td><td bgcolor="#FFFFCC">30.00<br></td><td bgcolor="#FFFFCC">教育出版社<br></td><td bgcolor="#FFFFCC"><form method="post" action="cart.jsp"><input type="text" name="num" value="1" size="3"><input type="submit" name="button7" value="放到购物车"><input type="hidden" name="sm" value="格林童话"><input type="hidden" name="cost" value="30.00"><input type="hidden" name="cbs" value="教育出版社"></form></td></tr></table></body></html>显示效果如下图:(购买数量的初始值设为1,可通过输入修改;点击“放到购物车”即可跳转到“我的购物车页面”)2>cart.jsp:作用于“我的购物车”页面,代码如下:<%@ page language="java" contentType="text/html; charset=gb2312"%> <%@ page import="java.util. * " %><%@ include file="hzsb.jsp" %><html><head><title>我的购物车</title></head><body><h1 align="center">已&nbsp;购&nbsp;商&nbsp;品</h1><% String[] goods=new String[4];goods[0]=request.getParameter("sm");goods[1]=request.getParameter("cost");goods[2]=request.getParameter("cbs");goods[3]=request.getParameter("num");Vector goodslist=(Vector)session.getAttribute("goodscart");if(goodslist==null){ goodslist=new Vector();goodslist.addElement(goods);}else{ goodslist.addElement(goods);if(request.getParameter("delgoods")!=null){ String delgoods=request.getParameter("delgoods");goodslist.removeElementAt(Integer.parseInt(delgoods));}}session.setAttribute("goodscart",goodslist);%><table width="90%" border="0" align="center" cellpadding="10" cellspacing="1" bgcolor="#CC9900"><tbody><tr><td width="30%">&nbsp;书名</td><td width="10%">单价&nbsp;</td><td width="30%">出版社&nbsp;</td><td width="10%">购买&nbsp;</td><td width="20%">删除&nbsp;</td></tr><% if(goodslist!=null)for(int x=0;x<goodslist.size();x++){String[] buygoods;buygoods=(String[])goodslist.elementAt(x);if(buygoods[0]!=null){String sm=hzsb(buygoods[0]);String cbs=hzsb(buygoods[2]);%><tr><td bgcolor="#FFFFCC">&nbsp;<%=sm %></td><td bgcolor="#FFFFCC">&nbsp;<%=buygoods[1] %></td><td bgcolor="#FFFFCC">&nbsp;<%=cbs %></td><td bgcolor="#FFFFCC">&nbsp;<%=buygoods[3] %></td><td align="center" valign="middele" bgcolor="#FFFFCC"><form method="post">&nbsp;<input type="submit" value="从购物车中删除" name="button8"><input type="hidden" value="del" name="del"><input type="hidden" value=<%=x %> name="delgoods"></form></td></tr><%}} %></tbody></table><h2 align="center"><a href="goods.html">&nbsp;继续购买商品</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="cost.jsp">到结算中心</a></h2> </body></html>------------------------------------------------------------------------------------------------------------------------------- 显示效果如下图所示:(通过点击“继续购买商品”返回购物车页面,继续添加;通过点击“从购物车中删除”删除已购的商品;通过点击“结算中心”跳转到结算页面)3>cost.jsp:作用于“已购商品明细”页面,代码如下:<%@ page language="java" contentType="text/html; charset=gb2312"%><%@ page import="java.util. * " %><%@ include file="hzsb.jsp" %><html><head><title>已购商品明细</title></head><body><h1 align="center">结&nbsp;算&nbsp;中&nbsp;心</h1><table width="90%" height="113" border="0" align="center" cellpadding="10" cellspacing="1" bgcolor="#CC9900"><tr><td width="30%">&nbsp;书名</td><td width="10%">单价&nbsp;</td><td width="30%">出版社&nbsp;</td><td width="30%">购买&nbsp;</td></tr><%Vector goodslist=(Vector)session.getAttribute("goodscart");float totalmoney=0;for(int x=0;x<goodslist.size();x++){String[] buygoods;buygoods=(String[])goodslist.elementAt(x);if(buygoods[0]!=null){String sm=hzsb(buygoods[0]);String cbs=hzsb(buygoods[2]);%><tr><td bgcolor="#FFFFCC">&nbsp;<%=sm %></td><td bgcolor="#FFFFCC">&nbsp;<%=buygoods[1] %></td><td bgcolor="#FFFFCC">&nbsp;<%=cbs %></td><td bgcolor="#FFFFCC">&nbsp;<%=buygoods[3] %></td></tr><%totalmoney+=((Float.parseFloat(buygoods[1]))*(Float.parseFloat(buygoods[3]))); } }goodslist.removeAllElements();%><tr><td bgcolor="#FFFFCC">&nbsp;<a href="goods.html">返回购物首页</a></td> <td bgcolor="#FFFFCC">&nbsp;</td><td bgcolor="#FFFFCC">&nbsp;</td><td bgcolor="#FFFFCC">合计&nbsp;<%=totalmoney %></td></tr></table></body></html>显示效果如下图:显示总金额;通过点击“返回首页”可回到购物车页面。

相关主题