【文件属性】:
文件名称:Ajax+jsp+Servlet 实现购物车
文件大小:7KB
文件格式:RAR
更新时间:2013-01-27 07:09:06
java,jsp,ajax,购物车
package shoppingcart.biz;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
/**
* 购物车
*/
public class ShoppingCart {
private Map cartMap = null; //保存Product的Map
/**
* 购物车构造函数
*/
public ShoppingCart(){
cartMap = new HashMap();
}
/**
* 取得存放产品的cartMap
*/
public Map getCartMap(){
return this.cartMap;
}
/**
* 向购物车中添加产品
*/
public boolean addProduct(String productId){
if(existProduct(productId)){ // 产品已存在则增加数量
Product product = cartMap.get(productId);
product.setProductNum(product.getProductNum() + 1);
return true;
}
else{ // 否则新加入该产品
Product product = new Product(productId);
if(product.getProductId()==null){
return false; // 数据库中无该产品
}else{
cartMap.put(productId, product);
return false;
}
}
}
/**
* 检查购物车里是否已存在该产品
*/
public boolean existProduct(String productId){
Iterator hmkey = cartMap.keySet().iterator();
while(hmkey.hasNext()){
String pid = hmkey.next();
if(pid.equals(productId)){
return true;
}
}
return false;
}
/**
* 从购物车中移除指定产品
*/
public void delProduct(String productId){
cartMap.remove(productId);
}
/**
* 获取购物车产品数量
*/
public int getProductNum(){
int productNum = 0;
Iterator hmEntry = cartMap.values().iterator();
while(hmEntry.hasNext()){
productNum += hmEntry.next().getProductNum();
}
return productNum;
}
/**
* 统计购物车商品总价
*/
public double getTotalprice(){
double totalPrice = 0.0;
Iterator hmkey = cartMap.keySet().iterator();
Product product = null;
while(hmkey.hasNext()){
product = cartMap.get(hmkey.next());
totalPrice += product.getProductPirce() * product.getProductNum();
}
return totalPrice;
}
/**
* 清空购物车
*/
public void clearCart(){
cartMap.clear();
}
}
【文件预览】:
Ajax+jsp+Servlet 实现购物车
----db()
--------products.sql(919B)
----java()
--------shoppingcart()
----web()
--------index.jsp(3KB)
--------cart.jsp(3KB)