首页 > 其他 > 详细

细谈会话管理-----Cookie和Session

时间:2015-12-18 16:30:44      阅读:244      评论:0      收藏:0      [点我收藏+]

一、怎么定义一次会话?

我们打开我们的浏览器,我们中间访问很多网页,直到我们关闭浏览器,就意味着会话结束。所以一次会话就是打开浏览器到关闭浏览器这个过程

二、会话管理到底都管理什么?

管理浏览器端和服务器端之间会话过程中产生的会话数据。

三、Cookie技术和Session技术的主要区别在于何处?

  • Cookie技术:会话数据保存在浏览器端
  • Session技术:会话数据保存在服务器端

四、细说Cookie技术篇

4.1、Cookie类的学习:

1、构造Cookie对象

Cookie(java.lang.String name, java.lang.String value) 

2、设置Cookie

void setPath(java.lang.String uri)   :设置cookie的有效访问路径
void setMaxAge(int expiry) : 设置cookie的有效时间
void setValue(java.lang.String newValue) :设置cookie的值

3、发送cookie到浏览器端保存

void response.addCookie(Cookie cookie)  : 发送cookie

4、服务器端接收cookie

Cookie[] request.getCookies()  : 接收cookie

4.2、Cookie原理

1、服务器创建cookie对象,把会话数据存储到cookie对象中。

 new Cookie("name","value");

2、服务器发送cookie信息到浏览器

 response.addCookie(cookie);

举例: set-cookie: name=eric  (隐藏发送了一个set-cookie名称的响应头)

3、浏览器得到服务器发送的cookie,然后保存在浏览器端。

4、浏览器在下次访问服务器时,会带着cookie信息

    举例: cookie: name=eric  (隐藏带着一个叫cookie名称的请求头)

5、服务器接收到浏览器带来的cookie信息

 request.getCookies();

4.3 Cookie的一些细节

1、void setPath(java.lang.String uri):设置cookie的有效访问路径。有效路径指的是cookie的有效路径保存在哪里,那么浏览器在有效路径下访问服务器时就会带着cookie信息,否则不带cookie信息。

2、void setMaxAge(int expiry) : 设置cookie的有效时间。

  • 正整数:表示cookie数据保存浏览器的缓存目录(硬盘中),数值表示保存的时间。
  • 负整数:表示cookie数据保存浏览器的内存中。浏览器关闭cookie就丢失了!!
  • 零:表示删除同名的cookie数据

3、Cookie数据类型只能保存非中文字符串类型的。可以保存多个cookie,但是浏览器一般只允许存放300个Cookie,每个站点最多存放20个Cookie,每个Cookie的大小限制为4KB。

细谈会话管理-----Cookie和Session

原文:http://www.cnblogs.com/lyjs/p/5057035.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!