java cart_Shopcart.java

该博客介绍了一个名为Shopcart的类,用于管理购物车中的商品。类中包含添加、删除、更新商品数量的方法,并能获取商品总价。通过连接数据库获取商品详细信息,实现了与数据库的交互。此外,还提供了显示所有商品及其数量的功能。
摘要由CSDN通过智能技术生成

package Shopping;

import java.sql.Connection;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.util.ArrayList;

import java.util.HashMap;

import java.util.Iterator;

import java.util.List;

public class Shopcart {

private Goods goods;

private double sum;

static HashMap hm = new HashMap();

public double getSum() {

return sum;

}

public void setSum(double sum) {

this.sum = sum;

}

public Goods getGoods() {

return goods;

}

public void setGoods(Goods goods) {

this.goods = goods;

}

public void Addgoods(String goodsname, Integer goodscount) {

hm.put(goodsname, goodscount);

}

public void Delgoods(String goodsname) {

hm.remove(goodsname);

}

public void ClearGoods() {

hm.clear();

}

public void upGoods(String goodsname, Integer newNumber) {

hm.put(goodsname, newNumber);

}

public Integer getGoodsNumberByGoodsName(String goodsname) {

return hm.get(goodsname);

}

private static PreparedStatement ps = null;

private static ResultSet rs = null;

public ArrayList getAllGoods() {

ArrayList alist = new ArrayList();

try (Connection ct = new Connect().getConn();) {

String sql = "select * from goodsbean where name in (";

Iterator it = hm.keySet().iterator();

while (it.hasNext()) {

String goodsname = it.next();

if (it.hasNext()) {

sql +="'"+ goodsname + "',";

} else {

sql += "'"+goodsname + "')";

}

}

ps = ct.prepareStatement(sql);

rs = ps.executeQuery();

while (rs.next()) {

alist.add(new Goods(rs.getInt("id"), rs.getString("name"), Double.parseDouble(rs.getString("price"))));

}

} catch (Exception e) {

e.printStackTrace();

}

return alist;

}

public double toBalance() {

double sum = 0;

List goodslist = getAllGoods();

for (int i = 0; i < hm.size(); i++)

sum += goodslist.get(i).getPrice() * hm.get(i).intValue();

return sum;

}

public void displayAll() {

if (hm.isEmpty())

System.out.println("无任何商品");

else {

List goodslist=getAllGoods();

for (int i = 0; i < hm.size(); i++) {

System.out.println(goodslist.get(i).getId() + "\t" + goodslist.get(i).getName() + "\t"

+ goodslist.get(i).getPrice() + "\t" + hm.get(goodslist.get(i).getName()));

}

}

}

}

一键复制

编辑

Web IDE

原始数据

按行查看

历史

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值