简单购物车

简单购物车

点击观看演示

 

下载源代码


〖 作者:不详 〗〖 大小:3k 〗〖 发布日期:2005-08-16 〗〖 浏览:145 〗
     在DummyCart.java程序中定义了购物车的基本模型,DummyCart类使用Vector数据结构来模拟购物车的功能,DummyCart有三个属性分别是submit item v,其中submit的值如果为add,那么意味着往购物车中添加商品;如果为remove,那么表示用户将从购物车中删除商品,Item代表用户需要添加或者舍弃的商品的名字,v是一个Vector类型的数据,它保存着购物车的所有信息。利用Vector 类的方法可以实现往购物车中添加商品或者删除商品的操作,在DummyCart 类中最重要的方法是processRequest(),这个方法判断submit的值,然后调用addItem()方法或者removeItem()方法完成基本的购物车操作。
package test;
import javax.servlet.http.*;
import java.util.Vector;
import java.util.Enumeration;
public class DummyCart{//虚构的购物车
  Vector v = new Vector();//存放货的蓝子
  String submit = null;//submit="add" 添加货物,submit="remove" 扔掉货物
  String item = null;//货物的名子

  private void addItem(String name){
    v.addElement(name);
  }

  private void removeItem(String name){
   v.removeElement(name);
  }

  public void setItem(String name){
   item = name;
  }

 public void setSubmit(String s){
   submit = s;
 }

 public String[] getItems(){
   String[] s = new String[v.size()];
   v.copyInto(s);
   return s;
 }

 public void processRequest(HttpServletRequest request){
  // null value for submit - user hit enter instead of clicking on
  // "add" or "remove"
  if (submit == null)
    addItem(item);
  if (submit.equals("add"))
    addItem(item);
  else if (submit.equals("remove"))
   removeItem(item);
  // reset at the end of the request
   reset();
 }
// reset
 private void reset(){
  submit = null;
 item = null;
 }
}
下面的代码用来测试:
    用户首先打开carts.html,页面选中某种商品然后单击submit,按钮把数据提交到carts.jsp,carts.jsp首先使用<jsp:useBean>创建一个新的Session Scope类型的JavaBean组件对象cart,如果此cart对象已经存在了那就不用创建了直接拿过来用就是了。Carts.jsp程序接着使用<jsp:setProperty>操作指令给carts对象赋值。再下来carts.jsp程序调用processRequest()方法让它根据submit属性的值完成相应的购物车操作。最后carts.jsp程序使用cart对象的getItems()方法配合for循环结构把购物车的内容全部输出来。
<html>
<jsp:useBean id="cart" scope="session" class="test.DummyCart" />
<jsp:setProperty name="cart" property="*" />
<%
cart.processRequest(request);
%>
<FONT size = 5 COLOR="#CC0000">
<br> You have the following items in your cart:
<ol>
<%
String[] items = cart.getItems();
for (int i=0; i<items.length; i++) {
%>
<li> <%= items[i] %>
<%
}
%>
</ol>
</FONT>
<hr>
<%@ include file ="carts.html" %>
</html>

下面是carts.html
<title>carts</title>
</head>
<body bgcolor="white">
<font size = 5 color="#CC0000">
<form type=POST action=carts.jsp>
<BR>
Please enter item to add or remove:
<br>
Add Item:
<SELECT NAME="item">
<OPTION>Beavis & Butt-head Video collection
<OPTION>X-files movie
<OPTION>Twin peaks tapes
<OPTION>NIN CD
<OPTION>JSP Book
<OPTION>Concert tickets
<OPTION>Love life
<OPTION>Switch blade
<OPTION>Rex Rugs & Rock n' Roll
</SELECT>
<br> <br>
<INPUT TYPE=submit name="submit" value="add">
<INPUT TYPE=submit name="submit" value="remove">
</form>
</FONT>
</body>
</html>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值