📄 cartforweb.java~10~
字号:
package data;import javax.naming.*;import java.util.*;import javax.rmi.PortableRemoteObject;import java.rmi.RemoteException;import cmscartpro.*;public class CartForWeb { CartHome cartHome = null; Cart cart = null; String customer = ""; //创建购物车的处理方法类 CartMethod cartMethod = new CartMethod(); public CartForWeb(String customer) { this.customer = customer; try { initialize(); } catch (Exception ex) { ex.printStackTrace(); } } //EJB的初始化方法 public void initialize() throws Exception { //创建服务器对象查找类 Context context = new InitialContext(); //取得EJB在服务器的对象 Object ref = context.lookup("Cart"); //取得Cart EJB的创建接口 cartHome = (CartHome) PortableRemoteObject.narrow(ref, CartHome.class); //取得Cart EJB的远程接口 cart = create(); } //创建Cart EJB的远程接口 public Cart create() throws Exception { cart = cartHome.create(customer); return cart; } //添加商品的方法 public void addGoods(java.util.Hashtable goods) { try{ cart.addGoods(goods); }catch(Exception ex){ ex.printStackTrace(); } } //修改商品数量的方法 public void updateGoods(java.util.Hashtable goods) { try{ cart.updateGoods(goods); }catch(Exception ex){ ex.printStackTrace(); } } //删除商品数量的方法 public void removeGoods(java.util.Collection goodsId) { try{ cart.removeGoods(goodsId); }catch(Exception ex){ ex.printStackTrace(); } } //取得顾客名字的方法 public java.lang.String getCustomer() { try{ return cart.getCustomer(); }catch(Exception ex){ ex.printStackTrace(); return ""; } } //设置顾客名字的方法 public void setCustomer(java.lang.String customer) { try{ cart.setCustomer(customer); }catch(Exception ex){ ex.printStackTrace(); } } //取得商品集合的方法 public Hashtable getGoods() { try{ return cart.getGoods(); }catch(Exception ex){ ex.printStackTrace(); return null; } } //取得商品数组的方法 public Object[][] getGoodsobjs(){ Hashtable goods = getGoods(); Enumeration GoodsIds = goods.keys(); //创建商品数组 Object[][] goodsObjs = new Object[goods.size()+1][6]; //创建单个商品数组 String[] oneGoodsStrs = new String[4]; int row = 0; String goodsStr = ""; String goodsId = ""; double amount = 0; double oneGoodAmount = 0; int quantity = 0; while(GoodsIds.hasMoreElements()){ //取得商品标识 goodsId = (String)GoodsIds.nextElement(); //取得商品字符串 goodsStr = (String)goods.get(goodsId); //分解商品字符串 oneGoodsStrs = decodeGoodsStr(goodsStr); goodsObjs[row][0] = goodsId; //取得商品标识 goodsObjs[row][1] = oneGoodsStrs[0]; //取得商品名称 goodsObjs[row][2] = oneGoodsStrs[1]; //取得单位数量 goodsObjs[row][3] = new Double(oneGoodsStrs[2]); //取得单价 goodsObjs[row][4] = new Integer(oneGoodsStrs[3]); //取得购买数量 try{ oneGoodAmount = Double.parseDouble(oneGoodsStrs[2]) * Double.parseDouble(oneGoodsStrs[3]); quantity += Integer.parseInt(oneGoodsStrs[3]); //累加购买数量 }catch(Exception ex){ oneGoodAmount = 0; } //累加总金额 amount += oneGoodAmount; goodsObjs[row][5] = new Double(oneGoodAmount); //取得金额 row++; } //在最后一行显示总金额 goodsObjs[row][0] = "总金额"; goodsObjs[row][1] = ""; goodsObjs[row][2] = ""; double averagePrice = 0; //计算平均单价 if(quantity != 0){ averagePrice = roundUp(amount/quantity); }else{ averagePrice = 0; } goodsObjs[row][3] = new Double(averagePrice); goodsObjs[row][4] = new Integer(quantity); //取得购买数量 goodsObjs[row][5] = new Double(roundUp(amount)); //取得总金额 return goodsObjs; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -