cartbean.java

来自「购物车模块实例。购物车模块可以浏览商品类别;可以根据商品类别浏览商品信息;可以购」· Java 代码 · 共 83 行

JAVA
83
字号
package cmscartpro;

import javax.ejb.*;
import data.*;
import java.util.*;

public class CartBean implements SessionBean {
  SessionContext sessionContext;
  private java.lang.String customer;
  //创建商品集合类
  private Hashtable goods = new Hashtable();

  public void ejbCreate(String customer) throws CreateException {
    this.customer = customer;
    System.out.println(customer + "顾客进入购物车模块.");
  }
  public void ejbRemove() {
    System.out.println(customer + "顾客离开购物车模块.");
  }
  public void ejbActivate() {
  }
  public void ejbPassivate() {
  }
  public void setSessionContext(SessionContext sessionContext) {
    this.sessionContext = sessionContext;
  }
  //添加商品的方法
  public void addGoods(java.util.Hashtable goods) {
    //取得添加商品的ID集合
    Enumeration newGoodsIds = goods.keys();
    while(newGoodsIds.hasMoreElements()){
       Object goodsId = newGoodsIds.nextElement();
      //购买车的商品包括新添加商品
      if(this.goods.containsKey(goodsId)){
        //分解添加商品字符串
        String[] newGoods = (new CartMethod()).decodeGoodsStr(
            goods.get(goodsId).toString());
        //分解购物车商品字符串
        String[] oriGoods = (new CartMethod()).decodeGoodsStr(
            this.goods.get(goodsId).toString());
        //增加商品数量
        int newQuantity = Integer.parseInt(newGoods[3]) +
            Integer.parseInt(oriGoods[3]);
        //将修改后的商品数量放入购物车的商品集合,覆盖原来的商品记录
        this.goods.put(goodsId, newGoods[0] + "@@" + newGoods[1] + "@@"
                       + newGoods[2] + "@@" + String.valueOf(newQuantity));
      //购买车的商品不包括新添加商品
      }else{
        this.goods.put(goodsId, goods.get(goodsId));
      }
    }
  }
  //修改商品数量的方法
  public void updateGoods(java.util.Hashtable goods) {
    //取得修改商品的ID集合
    Enumeration newGoodsIds = goods.keys();
    while(newGoodsIds.hasMoreElements()){
      Object goodsId = newGoodsIds.nextElement();
      //覆盖购物车的商品记录
      this.goods.put(goodsId, goods.get(goodsId));
    }
  }
  //删除商品数量的方法
  public void removeGoods(java.util.Collection goodsId) {
    java.util.Iterator goodsIdIterator = goodsId.iterator();
    while(goodsIdIterator.hasNext()){
      //删除购物车的商品记录
      this.goods.remove(goodsIdIterator.next());
    }
  }
  //取得顾客名字的方法
  public java.lang.String getCustomer() {
    return customer;
  }
  //设置顾客名字的方法
  public void setCustomer(java.lang.String customer) {
    this.customer = customer;
  }
  //取得商品集合的方法
  public Hashtable getGoods() {
    return goods;
  }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?