笔记小结:两个会话技术

 会话概念:打开浏览器,可以访问WEB资源,多次访问WEB资源,关闭浏览器,整个过程为一次会话。

* 购买商品
用户点击超链接通过一个servlet购买了一个商品,程序应该保存用户购买的商品,
以便于用户点结帐servlet时,结帐servlet可以得到用户商品为用户结帐
* cookie

* Cookie的API
* cookie的构造方式 Cookie(String name, String value) 
* String getName()  获取cookie的名称
* String getValue() 获取cookie的值

* void setMaxAge(int expiry)  :设置有效时间
* 失效cookie setMaxAge(0); 前提条件:设置有效路径(和之前设置过相同)

* void setPath(String uri)  :设置有效路径
* 默认的有效路径()
* 配置 /last默认路径 /day11
* 配置 /servlet/last默认路径 /day11/servlet

* void setDomain(String pattern)  :设置有效域名
* www.sina.com.cn
* sports.sina.com.cn
* xxx.sina.com.cn
* 设置有效域名 setDomain(".sian.com.cn");

* 会话级别的cookie:默认保存到浏览器的内存中。
* 持久的cookie:把cookie保存到磁盘上。通过setMaxAge(int a)进行设置。


* 显示用户上次访问过的商品信息(需求)
* 1.获取请求参数
* 2.获取cookie数组,通过指定的名称(自己指定)查找cookie
* 3.如果cookie==null,第一次访问
* * 如果是第一次访问,创建cookie,回写浏览器
* 4.如果cookie!=null,不是第一次访问
* * 如果不是第一次访问,说明我的cookie中已经存在id
* * 判断,当前的id是否已经存在cookie的中value
* * 如果存在,不用操作
* * 如果不存在,在后面追加(product=1,2)
* 5.重定向到商品页面


    * session(服务器) 
* cookie基于客户端,不安全,并且大小和个数的限制。
* session域对象,范围一次会话范围,存个人相关的数据。
* setAttribute(String name, Object value) 
* Object getAttribute(String name)  

* String getId()  获取seesion的唯一的ID
* void invalidate()  销毁的seesion


* 完成简单的购物车
* 购物车 Map<String,Integer> cart购物车,把购物车存入seesion中。

* 获取数据
* 判断是否是第一次访问    session.getAttribute("cart");
 * 如果第一次访问,cart创建一个购物车,放入商品的名称和数量


 * 如果不是第一次访问,cart!=null
判断是否包含该商品?
  * 如果包含,数量拿出来,++,放回去,存入seesion中

  * 如果不包含,正常放入到购物车中。存入seesion中

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值