⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 shoppingcartcontrollerimpl.java

📁 JSP开发的完整的网络商店.包含源代码和开发文档等
💻 JAVA
字号:
/*
 * Created on 2005-11-3
 * Author 曹汕
 * Version 1.0
 * Copyright by CS.SSPKU Inc. All rights reserved. 
 */
package com.struts.controller.impl;

import java.util.Vector;
import java.sql.ResultSet;
import java.sql.SQLException;

import javax.servlet.http.HttpSession;

import com.struts.business.Member;
import com.struts.business.Product;
import com.struts.business.Shoppingcart;
import com.struts.utils.Constants;

/**
 * @author cs
 *
 * TODO To change the template for this generated type comment go to
 * Window - Preferences - Java - Code Style - Code Templates
 */
public class ShoppingcartControllerImpl extends ControllerImpl{
	private static ShoppingcartControllerImpl _instance;

	/**
	 * 单例模式,只创建唯一一个实例 
	 * @return 返还ShoppingcartController 类的惟一实例
	 */
	public static synchronized ShoppingcartControllerImpl getInstance() {
		if (_instance == null)
			_instance = new ShoppingcartControllerImpl();
		return _instance;
	}
	
	public ShoppingcartControllerImpl(){
	}
	
	/**
	 * 添加商品到购物车时判断商品是否已存在购物车
	 * @param shoppingcart 保存当前购物车中信息的Vector对象
	 * @param productId 待添加的商品ID
	 * @param quantity 待添加的商品的购买数量
	 * @return true or false;
	 */
	public boolean isInShoppingcart(Vector shoppingcart,int productId){

			if(shoppingcart.isEmpty())return false;
			Shoppingcart sc=new Shoppingcart();
			for(int i=0;i<shoppingcart.size();i++){	
				sc=(Shoppingcart)shoppingcart.get(i);
				if(sc.getProductId()==productId)return true;
			}
			return false;
		}
	/**
	 * 添加商品到购物车
	 * @param shoppingcart 保存当前购物车中信息的Vector对象
	 * @param productId 待添加的商品ID
	 * @param quantity 待添加的商品的购买数量
	 * @return vc 修改过的购物车信息的Vector对象
	 */
	public Vector addShoppingcart(Vector shoppingcart,int productId,int quantity){
		Vector vc=shoppingcart;
		Product product=new Product();
		product=ProductControllerImpl.getInstance().getProductDetailInfo(productId);
		Shoppingcart sc=new Shoppingcart();
		sc.setProductId(productId);
		sc.setProductName(product.getName());
		sc.setStandardPrice(product.getStandard_price());
		sc.setMemberPrice(product.getMember_price());
		sc.setQuantity(quantity);
		vc.add(sc);
//		for(int i=0;i<vc.size();i++){
//			sc=(Shoppingcart)vc.get(i);
//			System.out.println("************************************************");
//			System.out.println(sc.getProductId());
//			System.out.println(sc.getProductName());
//			System.out.println(sc.getMemberPrice());
//			System.out.println("************************************************");
//		}
		
		return vc;
			
		}
	
	/**
	 * 修改购物车中商品的数量
	 * @param shoppingcart 保存当前购物车中信息的Vector对象
	 * @param productId 所修改的商品ID
	 * @param quantity 所修改的商品的购买数量
	 * @return vc 修改过的购物车信息的Vector对象
	 */
	public Vector updateShoppingcart(Vector shoppingcart,int productId,int quantity){
		Vector vc=shoppingcart;
		Shoppingcart sc=new Shoppingcart();
		System.out.println(productId);
		System.out.println(quantity);
		for(int i=0;i<vc.size();i++){
			sc=(Shoppingcart)vc.get(i);
			if(sc.getProductId()==productId){
				sc.setQuantity(quantity);
				vc.set(i,sc);
				//vc.setElementAt(sc,i);
				break;
			}			
		}
			
		return vc;		
		}
	


	
	/**
	 * 删除购物车中商品
	 * @param shoppingcart 保存当前购物车中信息的Vector对象
	 * @param productId 所删除的商品ID
	 * @return vc 修改过的购物车信息的Vector对象
	 */
	public Vector removeShoppingcart(Vector shoppingcart,int productId){
		Vector vc=shoppingcart;
		Shoppingcart sc=new Shoppingcart();
		for(int i=0;i<vc.size();i++){
			sc=(Shoppingcart)vc.get(i);
			if(sc.getProductId()==productId){			
				vc.removeElementAt(i);
				break;
			}			
		}
			
		return vc;	
	}

	/**
	 * 修改购物车中商品的数量
	 * @param shoppingcart 保存当前购物车中信息的Vector对象
	 * @param productId[] 所修改的商品ID,设计保留
	 * @param quantity[] 所修改的商品的购买数量
	 */
	public Vector updateShoppingcart(Vector shoppingcart, Integer[] productId, Integer[] quantity) {
		Vector vc=shoppingcart;
		Shoppingcart sc=new Shoppingcart();
		if(vc!=null&&vc.size()!=0){
			for(int i=0;i<vc.size();i++){
				sc=(Shoppingcart)vc.get(i);
				sc.setQuantity(quantity[i].intValue());
				vc.set(i,sc);
			}
		}
		return vc;
	}
	
}

⌨️ 快捷键说明

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