会话技术

Cookie技术:会话数据保存在浏览器客户端

Session技术:会话数据保存在服务端



今天讲Cookie技术:

Cookie技术核心:

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到浏览器保存:(通过响应头发送:set-cookie),为了不自己设置响应头,直接使用下列方式:

         void addCookie(Cookiecookie):此方法是HttpServletResponse的方法,发送Cookie

4)服务器接收Cookie

         Cookie[]  getCookies():此方法是HttpServletRequest的方法,接收Cookie

Cookie原理:

1.服务器创建Cookie对象,把会话数据保存到cookie对象中;new Cookie("name", "eric")

2.服务器发送cookie信息到浏览器;response.addCookie(cookie)

3.浏览器接收cookie信息,并保存到浏览器中;

4.浏览器在下次访问服务器的时候,会带着cookie信息;

5.服务器接收浏览器带的cookie信息。request.getCookies()

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。

你可能感兴趣的:(会话技术)