java购物车代码java中购物车如何实现的?求代码,网上等。谢谢

java购物车代码  时间:2021-06-21  阅读:()

java 如何编写购物车

用Vector 或者是HashMap去装 <下面有部分代码你去看吧> .aptech.restrant.DAO; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Set; import java.sql.Connection; .aptech.restrant.bean.CartItemBean; .aptech.restrant.bean.FoodBean; public class CartModel { private Connection conn; public CartModel(Connection conn) { this.conn=conn; } /** * 得到订餐列表 * * @return */ public List changeToList(Map carts) { // 将Set中元素转换成数组,以便使用循环进行遍历 Object[] foodItems = carts.keySet().toArray(); // 定义double变量total,用于存放购物车内餐品总价格 double total = 0; List list = new ArrayList(); // 循环遍历购物车内餐品,并显示各个餐品的餐品名称,价格,数量 for (int i = 0; i < foodItems.length; i++) { // 从Map对象cart中取出第i个餐品,放入cartItem中 CartItemBean cartItem = (CartItemBean) carts .get((String) foodItems[i]); // 从cartItem中取出FoodBean对象 FoodBean food1 = cartItem.getFoodBean(); // 定义int类型变量quantity,用于表示购物车中单个餐品的数量 int quantity = cartItem.getQuantity(); // 定义double变量price,表示餐品单价 double price = food1.getFoodPrice(); // 定义double变量,subtotal表示单个餐品总价 double subtotal = quantity * price; // // 计算购物车内餐品总价格 total += subtotal; cartItem.setSubtotal(subtotal); cartItem.setTotal(total); list.add(cartItem); } return list; } /** * 增加订餐 */ public Map add(Map cart, String foodID) { // 购物车为空 if (cart == null) { cart = new HashMap(); } FoodModel fd = new FoodModel(conn); FoodBean food = fd.findFoodById(foodID); // 判断购物车是否放东西(第一次点餐) if (cart.isEmpty()) { CartItemBean cartBean = new CartItemBean(food, 1); cart.put(foodID, cartBean); } else { // 判断当前菜是否在购物车中,false表示当前菜没有被点过。



boolean flag = false; // 得到键的集合 Set set = cart.keySet(); // 遍历集合 Object[] obj = set.toArray(); for (int i = 0; i < obj.length; i++) { Object object = obj[i]; // 如果购物车已经存在当前菜,数量+1 if (object.equals(foodID)) { int quantity = ((CartItemBean) cart.get(object)) .getQuantity(); quantity += 1; System.out.println(quantity); ((CartItemBean) cart.get(object)).setQuantity(quantity); flag = true; break; } } if (flag == false) { // 把当前菜放到购物车里面 CartItemBean cartBean = new CartItemBean(food, 1); cart.put(foodID, cartBean); } } return cart; } /** * 取消订餐 */ public Map remove(Map cart, String foodID) { cart.remove(foodID); return cart; } /** * 更新购物车信息 * * @param cart * @param foodID * @return */ public Map<String, CartItemBean> update(Map cart, String foodID, boolean isAddorRemove) { Map map; if (isAddorRemove) { map = add(cart, foodID); } else { map = remove(cart, foodID); } return map; } }

java购物车功能怎么实现

设置基本的实体类就不用说了吧。

再设置一个购物车的实体类,接口和实现类。

利用Session机制来存储所选的物品,然后同意购物的时候将session中所存储的物品List存入表中。

java中购物车原码,最好是有详细解释的,谁知道?帮忙发个。

public class IndexAction extends Action { public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { //查找商品表中的所有商品信息 GoodsDAO dao = new GoodsDAO(); List list = dao.find(); request.setAttribute("lister",list); return mapping.findForward("a"); } } ListAction: public class ListAction extends Action { // 将hashmap中value转到list中 public static List getList(HashMap hs) { List list = new ArrayList(); Iterator itr = hs.keySet().iterator(); while (itr.hasNext()) { list.add(hs.get(itr.next())); } return list; } //优化后的getList方法 public static List getList(HashMap hs) { return new ArrayList(hs.values()); }

java中购物车如何实现的?求代码,网上等。谢谢

我知道的有两种方式: 1. 面向对象实现: 这个需要两个表(一个是购物车表,一个是购物项表) 2. 在一个表也可以实现(存: 用户id, 商品id, 商品数量),根据用户id来查询商品.

ProfitServer$34.56/年,西班牙vps、荷兰vps、德国vps/不限制流量/支持自定义ISO

profitserver怎么样?profitserver是一家成立于2003的主机商家,是ITC控股的一个部门,主要经营的产品域名、SSL证书、虚拟主机、VPS和独立服务器,机房有俄罗斯、新加坡、荷兰、美国、保加利亚,VPS采用的是KVM虚拟架构,硬盘采用纯SSD,而且最大的优势是不限制流量,大公司运营,机器比较稳定,数据中心众多。此次ProfitServer正在对德国VPS(法兰克福)、西班牙v...

HostYun:联通AS9929线路,最低月付18元起,最高500Mbps带宽,洛杉矶机房

最近AS9929线路比较火,联通A网,对标电信CN2,HostYun也推出了走联通AS9929线路的VPS主机,基于KVM架构,开设在洛杉矶机房,采用SSD硬盘,分为入门和高带宽型,最高提供500Mbps带宽,可使用9折优惠码,最低每月仅18元起。这是一家成立于2008年的VPS主机品牌,原主机分享组织(hostshare.cn),商家以提供低端廉价VPS产品而广为人知,是小成本投入学习练手首选。...

易探云:香港CN2云服务器低至18元/月起,183.60元/年

易探云怎么样?易探云最早是主攻香港云服务器的品牌商家,由于之前香港云服务器性价比高、稳定性不错获得了不少用户的支持。易探云推出大量香港云服务器,采用BGP、CN2线路,机房有香港九龙、香港新界、香港沙田、香港葵湾等,香港1核1G低至18元/月,183.60元/年,老站长建站推荐香港2核4G5M+10G数据盘仅799元/年,性价比超强,关键是延迟全球为50ms左右,适合国内境外外贸行业网站等,如果需...

java购物车代码为你推荐
比思论坛永久域名不知道为什么 比思论坛的网站打不开 怎么办呐上行宽带上行宽带和下行宽带什么意思qq管家官网在qq电脑管家官网有个可以登录qq的。登录上了可以加速么?防火墙技术应用防火墙的应用与研究论文validdate怎样解决oracle报错is not a valid date and timedriversbackup电脑里有个“Backup”文件夹是干什么的yy语音注册歪歪语音如何安装与注册?android权限大全哪些Android权限不能被用户应用程序使用linux启动盘制作工具linux下有没有制作u盘启动盘的东西mpeg4格式什么是MPEG4视频格式
域名升级访问中 个人域名注册 域名备案批量查询 qq云存储 东莞电信局 zpanel highfrequency 20g硬盘 密码泄露 云鼎网络 免空 香港亚马逊 512mb 空间登录首页 iki 中国联通宽带测试 江苏双线 小夜博客 forwarder 什么是dns 更多