购物车非cookie版

2015.11.26购物车,非cookie版

【点击来,你发现被骗了(笑哭,笑哭,笑哭,源代码的话,留下邮箱吧,是在不好找这一时半会儿的。)】

Jsp通过反射机制获取bean中的标签,但其实,可以没有真实的属性与之对应。只要是符合getset方法设置的名字,就可以通过el表达式在jsp页面中获取。

更新核心代码:

private void update(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

Enumeration<String> enumeration = request.getParameterNames();//得到参数名字们。

ShoppingCar shoppingCar = (ShoppingCar) request.getSession().getAttribute("shoppingCar");

Map<Integer, GoodsInCar> map = shoppingCar.getMap();

while(enumeration.hasMoreElements()){

String idString = enumeration.nextElement();//取得某一个参数

if(!"method".equals(idString)){//参数名不能为 update。因为 它并不对应一个值。

String value = request.getParameter(idString);//通过参数名获得对应参数值。

System.out.println(map.containsKey(Integer.parseInt(idString)));//key这个类型不一样可以么?先把正确的试出来,然后再试奇葩的。

//改几个,输出几个true就对了,好吧类型要一直应该

//不是应该,而是,就是! 虽然是object但是 类型必须对应一致!

map.get(Integer.parseInt(idString)).setNumber(Integer.parseInt(value));//也改成了

}

}

lookMyCar(request, response);

}

更新核心代码:

containsKey要求必须类型一致。

复习:

监听器:

requestListener httpSessionListener servletContexListener

这些对象创建和销毁的监听

RequestAttributeListener HttpSessionAttributeListener

ServletContextAttributeListener

给这些对象上,添加 删除 修改 属性的时候监听

利用 HttpSessionLIstener 的销毁方法做在线用户列表的更细(如果用户超过30min未操作的话)

2、自定义标签

1)标签处理程序

2)标签描述文件tld

3)Jsp页面taglib uri tld (uri,tld目录)

标签处理程序:当执行到某个标签的开始,结束时调用。在对应的标签处理程序中(java代码),执行对应的方法,在对应的方法中操作jsp页面。

JspContext PageContext JspWriter BodyContext

通过 这几个对象,就可以操作jsp页面中的数据。

分页标签:给处理程序的属性赋值的时候,实际就是给定标签的属性值。

标签有没有属性,怎么样的属性,是否允许在jsp页面中给值,是在标签的描述文件也就是对应的tld文件中,配置值:attribute,是否是必须的,是否是需要从jsp中给出的。

本天内容:

购物车:

1、学一个能够描述,现实生活中的购物车类,当需要购物车的时候,就new一个出来。

2、把所有的商品展现出来

3、添加购物车

4、删除购物车中某一个商品(多选框,全部删除)

5、修改购物车,购买商品的数量

6、每一种商品的总价,整个购物车中所有商品的总价。

时间: 2024-12-29 06:42:37

购物车非cookie版的相关文章

[转].net cookie版购物车

本文转自:http://www.sulong.cc/article/program/aspx/110613114249.html #region 添加到购物车AddShoppingCar /// <summary> /// 添加到购物车AddShoppingCar /// </summary> /// <param name="num">数量 如果存在产品 负数是减少 /// 正数是增加 如果不存在 直接增加</param> /// &l

POJ 1780 Code (欧拉回路+非递归版dfs)

题目地址:POJ 1780 还是求序列的欧拉回路.只不过这题有两坑. 第一坑是用数字来当点的话,会MLE,因为每个数字可以连10条边,100w条边会MLE,即使用vector也会TLE.这题可以用边来记录,对于n为1时直接输出,然后后面的,比如12,23这两个点就用边权值为123来表示这两个点,这样就把点和边的范围都缩小了10倍. 第二坑是用递归的dfs会爆栈,亲测即使加手扩栈也会爆..(简直丧心病狂..)需要用非递归版dfs,也不难,dfs本身就是利用的栈,所以改成栈的形式就可以了. 代码如下

python练习_购物车(简版)

python练习_购物车(简版) 需求: 写一个python购物车可以输入用户初始化金额 可以打印商品,且用户输入编号,即可购买商品 购物时计算用户余额,是否可以购买物品 退出结算时打印购物小票 以下代码实现的功能与思路: 功能: (1)预算金额控制,只能输入大于0的数字 (2)商品格式化打印 (3)选择完成要买的商品后,提示用户再次确认,确认后开始计算用户余额是否大于等于商品价格,价格正确后则加入购物车 (4)输入q则进行结算,结算时将重复的商品进行合并,显示个数,并计算消费总额和余额 思路:

非递归版求幂函数

#include<stdio.h> int MinSubsequenceSum(const int A[],int n) { int i,sum,MinSum; sum=MinSum=0; for(i=0;i<n;i++) { sum+=A[i]; if(sum<MinSum) MinSum=sum; if(sum>0) sum=0; } return MinSum; } void main() { int arr[10]={3,4,-2,5,-4,6,-2,8,-9,-23

SpringBoot整合Mybatis【非注解版】

接上文:SpringBoot整合Mybatis[注解版] 一.项目创建 新建一个工程 ? 选择Spring Initializr,配置JDK版本 ? 输入项目名 ? 选择构建web项目所需的staters(启动器) ? 选择与数据库相关的组件 ? 分析:Spring Boot基本上将我们实际项目开发中所遇到的所有场景都做了封装.它将所有的功能场景都抽取出来,做成了一个个的staters(启动器),只需要在项目的pom.xml配置文件里面引入这些starter相关场景的所有依赖都会导入进来.需要什

python web 购物车思路简洁版

众所周知购物车很麻烦(反正我不爱写)....但是又很重要 1 使用DRF框架 2 关系型数据库选择mysql 3 非关系型数据库选择redis 我们首先思考权限验证 非登录用户要可以存储购物车 登录用户也要可以存储购物车 用户还可以对购物车的增删改查(不论登录和非登录) 结算时要勾选需要结算的物品 用户登录时合并购物车 登录用户状态保持使用JWT&非登录用户使用cookie 如何区分说完了 .但是购物车储存信息放哪是个问题 众所周知关系型数据库的性能真的是烂到家了 关系型数据库每秒的访问次数11

非安装版tomcat配置和启动

我因为用到Magnolia cms系统,在网上下了带tomcat的安卓包,结果不会用非安装包的tomcat.在百度文库找到一篇.最后把他设置成服务没成功,特此记录在此,以后有时间再改回来. 1.关于java配置不表 2.关于非安装包版的tomcat要配置环境变量,以后补充 3.怎么运行呢?----重点 进入tomcat/bin目录点击startup.bat (注意此步不需要重启也行) ,然后会弹窗,我因为是在Magnolia里的,弹了2个.记住,tomcat标题的千万千万不要关.等看到最后一行出

浅谈购物车中cookie的使用

购物车对于电商网站来说是一个非常重要的模块.最近自己的项目中也用到了,所以拿出来说说事! 购物车是用户选择商品的一个缓存的地方.其中包含了商品的基本信息,例如:商品的描述,商品的价格,商品的数量等等. 对于这个缓存而言,实现的方式是有很多种的,当然也是各有优劣,简单说一下: 1.session:对话的时效性的问题,如果客户选购商品的途中浏览器突然关闭,服务端找不到cookie中的sessionid了,那么选购的商品就不存在了 2.cookie:只要添加了就一直存在,只要不是手动的去清除或者exp

自己写的分页器,BOOTSTRAP+JQUERY(非完全版,后续完善)

第一步://创建几个php文件的全局变量先,后面会很多地方用到var wholePhones="selectPhones.php";var lowPowerPhones="lowPowerPhones.php";var issuePhones="issuePhones.php";var losePhones="losePhones.php";     第二步: // 根据不同类型sorting不同商品列表的共用的函数集合,两个