[整理]cookie会话技术(保存会话数据).

  • 格式:doc
  • 大小:236.00 KB
  • 文档页数:2

-------------

------------- Cookie 会话技术

一个servlet创建cookie,步骤:

1、 创建cookie

Cookie cookie = new Cookie(“name”,” value”);

2、 给这个cookie设置生命周期

cookie.setMaxAge(3600);//这里设置了1个小时,以秒为单位。如果没有设置保存时间,当你关闭浏览器的时候,该web应用的cookie就失效了。

3、 把cookie信息会写给浏览器

response.addCookie(cookie);

另外再创建一个servlet,用来接收cookie信息

1、 Cookie cookies[ ] = request.getCookie();//getCookie()方法返回一个cookie数组,我们不能直接得到你想要的那个cookie,而是将当前web应用的所有cookie从浏览器中取出来,在进行遍历,找到你要的cookie

2、 for(int i=0; i

Cookie cookie = cookies[i];

System.out.println(cookie.getName() + “,” + cookie.getValue());

}

特别说明:

1、

2、 cookie可以被多个浏览器共享。

3、

4、 如果在创建cookie的时候,创建第一个Cookie cookie = new Cookie(“name”,” 胡明和”);再创建第二个cookie Cookie cookie = new Cookie(“name”,” 史蒂夫”);这个时候cookie表中的名字重复了,但是值是不一样的,后面一个cookie将会将前面一个cookie的值覆盖掉。

5、 cookie存放数据的方式是以明文的方式进行存放的,这样安全性非常低,我们可以加密后保存。

6、 加密算法-----md5 -------------

-------------

解决用户禁用cookie问题:

如果用户将cookie禁用了,那就要重写URL,如下:

Request.getSession();

String URL = response.encodeURL(“/MyShop/SwitchBook?name=java”);

Out.println(“点击购买”);

在返回的界面也这样写:

String URL = response.encodeURL(“/MyShop/ShowBook”);

Out.println(“返回购物大厅”);