Day 06会话及其会话技术

学习目标:

1.会话概述

2.cookie对象

3.session对象

学习内容:

1.会话概述

会话简单理解为:用户打开一个浏览器,点击多个超链接访问服务器的web资源,然后关闭浏览器,整个过程称为是一次会话。

客户端请求Web服务器时,针对每次HTTP请求,Web服务器都会创建一个HttpServletRequest对象,该对象只能保存本次请求所传递的数据。由于购买和结账是两个不同的请求,因此,在发送结账请求时,之前购买请求中的数据将会丢失。

使用ServletContext 对象保存数据时,由于同一个Web应用共享的是同一个ServletContext对象,因此,当用户在发送结账请求时,由于无法区分哪些商品是哪个用户所购买的,而会将该购物网站中所有用户购买的商品进行结算,这显然也是不可行的。

2.cookie对象

什么是cookie:

Cookie是保存在客户端的纯文本文件,比如txt文件,所谓的客户端就是我们自己的本地电脑,当我们使用自己的电脑通过浏览器进行访问网页的时候,服务器就会生成一个证书并返回给我的浏览器并写入我们的本地电脑,这个证书就是cookie。

cookie API:

1.创建一个cookie对象

Cookie c = new Cookie(String name,String value);

2.将cookie添加到response响应中

response.addCookie(cookie);

3.获取请求中的所有cookie对象组成的数组

Cookie[] cookie = request.getCookie();

4.删除cookie

没有直接删除cookie的方法

5.cookie的常用方法

  5.1getName()  获取cookie的名字

  5.2getValue  获取cookie的值

  5.3setvalue()  设置/修改cookie的值

  5.4setMaxAge  设置cookie的最大生存空间

  5.5setPath()  设置cookie的path

6.setMaxAge()  设置cookie的最大生存空间

  如果没有设置cookie的最大生存时间(没有设置setMaxAge方法),cookie默认是一个会话级别的cookie,cookie默认的保存在浏览器的内存中的,如果浏览器关闭,随着内存的释放,cookie也会跟着销毁。

  如果设置了cookie的最大生存空间(也就设置了setMaxAge方法),cookie将会以文件的形式保存在浏览器的临时文件夹中(也就是硬盘上),即使多次开关浏览器,cookie也不会销毁,下次打开浏览器仍然可以获取之前的cookie。

3.session对象

Session:在计算机中,尤其是在网络应用中,称为“会话控制”。Session对象存储特定用户会话所需的属性及配置信息。这样,当用户在应用程序的Web页之间跳转时,存储在Session对象中的变量将不会丢失,而是在整个用户会话中一直存在下去。当用户请求来自应用程序的 Web页时,如果该用户还没有会话,则Web服务器将自动创建一个 Session对象。当会话过期或被放弃后,服务器将终止该会话。Session 对象最常见的一个用法就是存储用户的首选项。例如,如果用户指明不喜欢查看图形,就可以将该信息存储在Session对象中。例:实现购物车:

 

2020080605009 

猜你喜欢

转载自blog.csdn.net/m0_54241777/article/details/121389571
今日推荐