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

📄 cart.java

📁 这是一个基于jsp的网上花店
💻 JAVA
字号:
package com;

import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
import java.sql.*;
import java.io.*;

public class Cart
{
    private String  name;//用户的标识
    private HashMap items;//购物车中的物品
    private int     orderID;
    private float   totalPrice;
    private Connection con;
    
    int ordersId=0;
    
    static CallableStatement cs=null;
	static Statement st=null;
	static ResultSet rs=null;

    public int getOrderID()
    {
            return orderID;
    }
    public float  getTotalPrice()
    {
            return totalPrice;
    }
    public Cart()
    {
        try
        {
            con = DBConnection.getConnection();
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }

        items = new HashMap();
    }
    public void addItem(String itemId,int quantity)
    {
            items.put(itemId,new Integer(quantity));
    }
    public void removeItem(String itemId)
    {
            items.remove(itemId);
    }
    public void updateItem(String itemId,int quantity)
    {
            if(items.containsKey(itemId))items.remove(itemId);
            items.put(itemId,new Integer(quantity));
    }
    public HashMap getItems()
    {
            return this.items;
    }
    public void setName(String name)
    {
            this.name=name;
    }
    public String getName()
    {
            return this.name;
    }
    public void clear()
    {
            items.clear();
    }
    /*public void saveData()
    {
            totalPrice=calPrice();
            orderID=genOrder(s1,s2,s3,s4);
            saveItems();
    }*/
    public int genOrder(String s1,String s2)//生成订单并返回订单号
    {
            String s3=new java.util.Date().toLocaleString();
            try
            {
                cs=con.prepareCall("{call Pro_orders(?,?,?,?)}");
                cs.setString(1,s1);
                cs.setString(2,s2);
                cs.setString(3,s3);
                cs.registerOutParameter(4,java.sql.Types.INTEGER);
                cs.execute();
                ordersId=cs.getInt(4);
            }
            catch(Exception e)
            {
                e.printStackTrace();
            }
            return ordersId;
    }

    /*public float calPrice()//计算当前购物车内物品的总价格
    {
        总价格在Cart.jsp中计算
    }*/
    public float calPrice(float totalPrice)//计算当前购物车内物品的总价格
	{
		return this.totalPrice=totalPrice;
	}
    
    public void addOrder(String orderName,String totalPrice)
    {
        try
        {
        	String dateTime=new java.util.Date().toLocaleString();
            PreparedStatement pst = con.prepareStatement("insert into orders values(?,?,?)");
            pst.setString(1,orderName);
            pst.setString(2,totalPrice);
            pst.setString(3,dateTime);
            
            int i= pst.executeUpdate();
            
            pst.close();
        }
        catch(Exception e)
        {
        	e.printStackTrace();
        }
    }

    public void saveItems(int i1,String s3,String s4,int i2)//存储当前订单物品明细
    {
        try
        {
        /*	System.out.println("*****"+i1+"  "+i2+"  "+s3+"  "+s4);
        	
        	String sql="insert into orderDetails values("+i1+",'"+s3+"','"+s4+"',"+i2+")";

            System.out.println("^^^^^"+i1+"  "+i2+"  "+s3+"  "+s4);

            rs=st.executeQuery(sql);
            
            st.close();
            rs.close();*/
            
         	PreparedStatement pst = con.prepareStatement("insert into ordersDetails(ordersId,goodsName,goodsPrice,goodsCount) values(?,?,?,?)");
            pst.setInt(1,i1);
            pst.setString(2,s3);
            pst.setString(3,s4);
            pst.setInt(4,i2);

            //System.out.println("^^^^^"+i1+"  "+i2+"  "+s3+"  "+s4);

            int i= pst.executeUpdate();
            pst.close();
        }
        catch(Exception e)
        {
        	e.printStackTrace();
        }
    }
        
    public Collection getOrders()
    {
        OrdersClass orders;
        ArrayList arraylist = new ArrayList();
        try
        {
            Statement statement = con.createStatement();
            ResultSet resultset = statement.executeQuery("select * from orders");


            while(resultset.next())
            {
                orders = new OrdersClass();
                int ordersId=resultset.getInt(1);
                String usersName=resultset.getString(2);
                float ordersPrice=resultset.getFloat(3);
                String ordersDatetime=resultset.getString(4);

                orders.setOrdersId(ordersId);
                orders.setOrdersName(usersName);
                orders.setOrdersPrice(ordersPrice);
                orders.setOrdersDatetime(ordersDatetime);

                arraylist.add(orders);
            }
			
			resultset.close();
			statement.close();			
        }
        catch(Exception e)
        {
            e.printStackTrace();
        }
        return arraylist;
    }
    
    public Collection getOrdersByOrderId(String s)
    {
    	int id=Integer.parseInt(s);
        OrdersClass orders;
        ArrayList arraylist = new ArrayList();
        try
        {
            Statement statement = con.createStatement();
            ResultSet resultset = statement.executeQuery("select * from orders where ordersId="+id);

            while(resultset.next())
            {
                orders = new OrdersClass();
                int ordersId=resultset.getInt(1);
                String usersName=resultset.getString(2);
                float ordersPrice=resultset.getFloat(3);
                String ordersDatetime=resultset.getString(4);

                orders.setOrdersId(ordersId);
                orders.setOrdersName(usersName);
                orders.setOrdersPrice(ordersPrice);
                orders.setOrdersDatetime(ordersDatetime);

                arraylist.add(orders);
            }
			
			resultset.close();
			statement.close();			
        }
        catch(Exception e)
        {
            e.printStackTrace();
        }
        return arraylist;
    }
    
    public Collection getOrdersByUserName(String s)
    {
        OrdersClass orders;
        ArrayList arraylist = new ArrayList();
        try
        {
            Statement statement = con.createStatement();
            ResultSet resultset = statement.executeQuery("select * from orders where usersName='"+s+"'");

            while(resultset.next())
            {
                orders = new OrdersClass();
                int ordersId=resultset.getInt(1);
                String usersName=resultset.getString(2);
                float ordersPrice=resultset.getFloat(3);
                String ordersDatetime=resultset.getString(4);

                orders.setOrdersId(ordersId);
                orders.setOrdersName(usersName);
                orders.setOrdersPrice(ordersPrice);
                orders.setOrdersDatetime(ordersDatetime);

                arraylist.add(orders);
            }
			
			resultset.close();
			statement.close();			
        }
        catch(Exception e)
        {
            e.printStackTrace();
        }
        return arraylist;
    }
    
    public void deleteOrder(String s)
    {
    	try
    	{
    		int i=Integer.parseInt(s);
    		//System.out.println(i+"  @@@@@@@@@@@@");
	    	Statement statement = con.createStatement();
	        statement.execute("delete from orders where ordersId='" + i + "'");
    	}
		catch(Exception e)
		{
			e.printStackTrace();
		}
    }
}


⌨️ 快捷键说明

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