购物车核心代码

购物车关键代码,供自己查阅


/*
* 添加到购物车
* */
public String addToCart(){

//-------------------------------------
Map session = ActionContext.getContext().getSession();
if(session.get("cart")==null){
List<Book> cart = new ArrayList<Book>();
session.put("cart",cart);
}

Book b = bookService.queryById(bookId, false);
b.setBookId(bookId);
// 标记添加的商品是否是同一件商品
boolean same = false;
List<Book> cart = (List<Book>) session.get("cart");
if(cart.size()==0){
b.setCount(b.getCount() + 1);
cart.add(b);
}else{
for (Book bo : cart) {
if(bo.getBookId() == this.getBookId()){
// 购买相同的商品,更新数量
bo.setCount(bo.getCount() + 1);
same = true;
}
}
if(!same){
Book b2 = bookService.queryById(bookId, false);
b2.setCount(b2.getCount() + 1);
cart.add(b2);
}
session.put("cart", cart);
}
return "addToCart_success";
}

购物车核心代码,布布扣,bubuko.com

时间: 2024-08-04 00:35:20

购物车核心代码的相关文章

Libgdx: android单机斗地主支持局域网wifi联网的网络模块核心代码

这个作品是我最近写的,结合我的毕业设计的通信模块和之前的单机版斗地主.我已经上架到豌豆荚了,贴了点广告,看看能不能赚点茶钱.可是一点也不乐观.因此我想分享给大家源码.只要不用于商业. 下面先贴网络模块的核心代码,第一次写这种逻辑用的udp, 经验不够,没有写的那么好看. 这里是我上架的apk,大家下载来试试也无妨: 地址 http://www.wandoujia.com/apps/com.hj.joker package com.hj.net; import java.io.ByteArrayI

【转】Darwin Streaming Server 核心代码分析

无意中看到了dqzhangp的一篇博客,分析了DSS的核心架构,读完顿时感觉豁然开朗,茅塞顿开,写得非常的鞭辟入里,言简意赅,我想没有相当的功力是写不出这样的文章的,情不自禁转到自己空间来,生怕弄丢了. 基本概念   首先,我针对的代码是Darwin StreamingServer 6.0.3未经任何改动的版本. DarwinStreaming Server从设计模式上看,采用了Reactor的并发服务器设计模式,如果对Reactor有一定的了解会有助于对DarwinStreaming Serv

Darwin Streaming Server 核心代码分析

基本概念 首先,我针对的代码是Darwin Streaming Server 6.0.3未经任何改动的版本. Darwin Streaming Server从设计模式上看,采用了Reactor的并发服务器设计模式,如果对Reactor有一定的了解会有助于对Darwin Streaming Server核心代码的理解. Reactor模式是典型的事件触发模式,当有事件发生时则完成相应的Task,Task的完成是通过调用相应的handle来实现的,对于handle的调用是由有限个数的Thread来完

从阅读Discuz的核心代码并给出注释的经历分析程序员该如何阅读代码?

本文标签:   程序员 php Discuz的核心代码 框架 深度学习框架 阅读优秀的代码,是技术水平成长的最佳途径.记得每个进来的新人,我都做过阅读优秀代码的要求,但几乎都只能坚持很少一段时间而已. 前晚大家还在开玩笑的讨论,都是因为看了前人的一些写法,才学会了一些乱七八糟的花招. 晚上我又开始重新阅读Discuz的核心代码,花了1h多的时间,才完成一个core文件的注释. 注释后的代码: <?php /** * [Discuz!] (C)2001-2099 Comsenz Inc. * Th

微信公众号抢现金红包活动的核心代码分析

红包使用说明及规则,请仔细阅读 (1)必须是认证过的服务号,开通了微信支付功能:在商家后台充足够多的钱来发红包. (2)发送频率规则◆ 每分钟发送红包数量不得超过1800个:◆ 北京时间0:00-8:00不触发红包赠送:(如果以上规则不满足您的需求,请发邮件至[email protected]获取升级指引) (3)红包规则◆ 单个红包金额介于[1.00元,200.00元]之间:◆ 同一个红包只能发送给一个用户:(如果以上规则不满足您的需求,请发邮件至[email protected]获取升级指引

通过游戏学python 3.6 第一季 第三章 实例项目 猜数字游戏--核心代码--猜测次数--随机函数和屏蔽错误代码--优化代码及注释 可复制直接使用 娱乐 可封装 函数

1 #猜数字--核心代码--猜测次数--随机函数和屏蔽错误代码---优化代码及注释 2 3 import random 4 number = random.randint(1,99)#设定答案(可以假设成年龄吧) 5 amount = random.randint(3,8) #设定猜测次数 6 print('本次游戏次数为',amount,'次') 7 8 count = 0 #设定初始次数 9 while count <= amount: #条件成立无限循环 10 try: 11 guess

深度揭密轮播插件核心代码的实现过程

轮播效果在网页中用的很多,swiper是其中最有代表性的作品,它支持水平和竖直滑动,还有反弹效果,兼容移动端和pc端.当然代码量也是相当大的,单是js就有5300行(3.4.0的未缩版本),若不考虑代码利用率和加载速度直接就用了,在移动端比较慎重,比如京东(m.jd.com)的轮播就没有用它,而是自己实现了类似的功能,代码量很少的样子(格式化之后看起来二三百行左右的样子).那么这个功能如果自己来实现,要怎么做呢? 准备工作 1. 准备几张图片(我这里放了四张) 2. 搭建目录结构(html+cs

OC 冒泡排序 -- 核心代码

//冒泡 核心代码 for (int i = 0; i < array.count - 1; i++) { int a = [array[i] intValue]; for (int j = i + 1; j < array.count; j++) { int b = [array[j]  intValue]; if (a > b) { [array exchangeObjectAtIndex:i withObjectAtIndex:j]; } } }

[html5+java]文件异步读取及上传核心代码

html5+java 文件异步读取及上传关键代码段 功能: 1.多文件文件拖拽上传,file input 多文件选择 2.html5 File Api 异步FormData,blob上传,图片显示 3.java端接受 核心代码: 1.拖拽代码段: 1 <div id="dropzone"> 2 <div>Drag & drop your file here...</div> 3 <div id='showFile'></di