Cookie 不是 JSP 内置对象,而是由 Netscape 公司发明,用来跟踪用户会话(session)的方式。 Cookie 由服务器生成并发送给浏览器(客户端),浏览器会将其以文本文件的形式存储在某个目录下。 例如,IE 浏览器把 cookie 信息保存在类似于 C://windows//cookies 的目录下,当用户再次访问某个网站时,服务器就会要求浏览器查找并返回之前发送的 cookie 信息,来识别此用户。 识别用户通常有以下步骤: 1、服务器把 cookie 信息发送到浏览器,例如:用户 ID、用户名称等信息。 2、浏览器在本地存储这些信息。 3、浏览器再次向服务器发送请求时,它会同时将本地存储的 cookie 信息一同发送给服务器,然后服务器使用这些信息来识别用户或其它。 cookie 的作用表现在以下方面: 对特定对象的追踪,如用户的访问次数、最后访问时间等。 统计网页的浏览次数。 在 cookie 有效期内,记录用户的登录信息,简化下一次的登录过程。 实现各种个性化服务,如”最近浏览过的商品“。 注意:由于 cookie 会将用户的个人信息保存在客户端,如用户名、计算机名、以及浏览和登录的网站等。这些信息可能会包含一些比较敏感的内容,所以从安全角度来说,使用 cookie 存在着一定的风险,因此不建议在 cookie 中保存比较重要或隐私的内容。 cookie方法cookie 常用方法如下:
JSP使用cookieJSP 使用 cookie 主要分为以下几个步骤。 1)创建 cookie 对象 创建 cookie 对象,name 代表 cookie 的名称,value 表示该名称对应的值,语法如下: cookie cookie = new cookie(String name,String value);1复制代码类型:[java] 注意:name 和 value 中不能包含空格和以下字符: [ ] ( ) = , " / ? @ : ;1复制代码类型:[java] 2)写入 cookie 创建 cookie 对象后,调用 response.addCookie() 方法写入 cookie,代码如下: response.addcookie(cookie);1复制代码类型:[java] 3)设置 cookie 有效期 调用 setMaxAge() 方法设置 cookie 的有效期(单位:秒),如将 cookie 有效期设置为 24 小时,代码如下: cookie.setMaxAge(60*60*24); 1复制代码类型:[java] 4)读取cookie 调用 request.getCookies() 方法读取 cookie,该方法返回 HTTP 请求中的 cookie 对象数组,需要通过遍历进行访问。 session和cookie的区别session 和 cookie 的区别如下:
实际开发中,需要根据不同的业务需求来选择采用哪种技术,例如,用户的用户名和密码等敏感信息不能使用 cookie 存储,淘宝购物的”最近浏览过的商品“,则可以使用 cookie 存储在客户端。 |
|