我的购物车

类别:Java 点击:0 评论:0 推荐:

*********** 购物车 ************

 

本人正在学JSP,最近开发了一个购物车程序,拿出来跟大家交流一下。

 

采用javabean+jsp方式,将javabean的scope的属性设为session. 使其在整个会话中有效。

 

 

以下类的说明。

 

1.cart.class

 

方法:

    addCart(int id,   int pro_c,    float price,float price1, String name,  String bei) //加入产品. 产品ID,定购数量,原价,现价,产品名称,备注

 

             

    getCart()  //返回一个Hashtable 数据类开型。

 

    getCartprice() //返回一个float数据类型 (购物车的总价)。

 

    modCount(String id,  int cou)  //修改一个产品的定购数量。产品ID,定购数量

 

                    

    removeCart(String id) //删除定购的产品。

 

 

2.msgCart.class

 

 方法:

      setCart(int id, int pro_c,    float price,  float price1,String name,String bei)  //加入产品,产品ID,定购数量,原价,现价,产品名称,备注

 

      getId()  //返回产品的ID号, int 类型。

 

      getProcount()  //返回产品的定购数量。int 类型。

 

      getPrice()     //返回产品原价。float 类型。

 

      getPrice1()   //返回产品现价。float 类型。

 

      getPricecount()  //返回每个产品的订购总价(以现价为准)。float 类型。

 

      getProname()     //返回每个产品的名字。

 

      getProbei()      //返回每个产品注泽。(比如:打折信息)

 

      clearCart()     //清除表。

 

 

-------------------------

以下是源程序。

 

//主程序

 

package cart;

import java.util.*;

 

public class cart{

 

public Hashtable items;

 

 

public cart()

 {

   items = new Hashtable();

  

 

  }

 

public void addCart(int id,int pro_c,float price,float price1,String name,String bei)

  {

   String id_=new String(id+"");

  

   if(items.containsKey(id_))

      {

     

        msgCart m_cart=new msgCart();

        m_cart=(msgCart)items.get(id_);

        m_cart.addPro(pro_c);

      }

   else

      {

         msgCart m_cart=new msgCart();

         items.put(id_,m_cart);

         m_cart.setCart(id,pro_c,price,price1,name,bei);

       

       }

    }

   

public void modCount(String id,int cou)

   {

      if(items.containsKey(id))

      {

     

        msgCart m_cart=new msgCart();

        m_cart=(msgCart)items.get(id);

        m_cart.modPro(cou);

      }

      else

       {

         System.out.print("no modify pc_count");

        }

  

    }

 

public void removeCart(String id)

  {

    items.remove(id);

   }

  

public void clearCart()

  {

    items.clear();

   }

 

public Hashtable getCart()

  {

    return items;

   }

 

public float getCartprice()

  {

    Enumeration enum=items.elements();

    msgCart m_cart=new msgCart();

    float count=0.0f;

    while(enum.hasMoreElements())

      {

        m_cart=(msgCart)enum.nextElement();

        count+=m_cart.getPricecount();

      }

    return count;

   }

      

}

 

 

 

// 产品信息类。

package cart;

 

import java.util.*;

 

public class msgCart {

 

public int pro_count=0; 

public float price=0;

public float price1=0;

public int id;

public String pro_name;

public String pro_bei;

 

 

  public msgCart()

   {

    }

  public void setCart(int id,int pro_c,float price,float price1,String name,String bei)

    {

      this.pro_count=pro_c;

      this.price=price;

      this.price1=price1;

      this.id=id;

      this.pro_name=name;

      this.pro_bei=bei;

    }

   

   

public void addPro(int pc)

 {

   pro_count+=pc;   

  }

 

 

public void modPro(int mc)

  {

    pro_count=mc;

  }

   

  public int getId()

   {

     return id;

    }

  public int getProcount()

   {

     return pro_count;

    }

       

 public float getPrice()

   {

     return price;

    }

 public float getPrice1()

   {

     return price1;

    } 

 public float getPricecount()

   {

     return price1*pro_count;

    }

public String getProname()

   {

     return pro_name;

    }

   {

     return pro_bei;

    }      

 

     

}

 

 

//以下是一个jsp文件的示例。

 

 

<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*,java.util.*" errorPage="" %>

 

<html>

<head>

<title>sample</title>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

</head>

<jsp:useBean id="my_cart" scope="session" class="cart.cart" />

<body>

<%

my_cart.addCart(12,2,78.23f,7.23f,"my cart","bei");

my_cart.addCart(120,2,78.23f,7.23f,"my cart","bei");

my_cart.addCart(121,2,78.23f,7.23f,"my cart","bei");

my_cart.addCart(122,2,78.23f,7.23f,"my cart","bei");

out.print("ok");

 

Hashtable cart1=new Hashtable();

cart1=my_cart.getCart();

 

cart.msgCart mcart=new cart.msgCart();

mcart=(cart.msgCart)cart1.get("120");

 

out.print(mcart.getId()+"<br>");

out.print(mcart.getProcount()+"<br>");

out.print(mcart.getProname()+"<br>");

out.print(mcart.getProbei()+"<br>");

out.print(mcart.getPricecount()+"<br>");

out.print("总计:"+my_cart.getCartprice());

 %>

 

</body>

</html>

 

 

邮件:[email protected]

本文地址:http://com.8s8s.com/it/it17360.htm