Java Web技术之Cookie

Cookie:它是服务器在获取到用户的请求之后,把用户的请求中的重要资源保存在这个对象中,在给用户响应的时候,把这个对象发给客户端。然后浏览器接收到这个Cookie之后,浏览器会自动的把Cookie中的数据保存到浏览器管理的缓存中,下次用户在访问这个网站的时候,浏览器就会自动携带上次保存的Cookie中的数据到服务器,服务器进而就能获取到以前的信息。

创建一个 cookie,cookie 是 servlet 发送到 Web 浏览器的少量信息,这些信息由浏览器保存,然后发送回服务器。cookie 的值可以唯一地标识客户端,因此 cookie 常用于会话管理。

一个 cookie 拥有一个名称、一个值和一些可选属性,比如注释、路径和域限定符、最大生存时间和版本号。一些 Web 浏览器在处理可选属性方面存在 bug,因此有节制地使用这些属性可提高 servlet 的互操作性。

servlet 通过使用 HttpServletResponse#addCookie 方法将 cookie 发送到浏览器,该方法将字段添加到 HTTP 响应头。

通过Cookie的构造函数,告诉我们在服务器给响应数据的时候,如果要发送一个Cookie对象,这时需要在服务器先创建一个Cookie对象,而这个Cookie中保存的数据由key和value组成。

当浏览器下次再访问服务器的时候,就会携带这个Cookie对象到服务器,服务器就会获取到当前这个Cookie对象,然后需要通过这个key,找出value值。

需要把浏览器cookie发送给浏览器,需要借助response对象完成

response.addCookie(Cookie对象);

问题1: 关闭浏览器,再次访问servlet,还回携带cookie的数据吗?

因为: cookie都被清空了

问题2:如果不能,怎样使浏览器能够携带cookie的数据?

posted @ 2016-11-07 17:53  李昭文-Java成长之路  阅读(161)  评论(0编辑  收藏  举报