c.getName().equals("username")怎么解释
for(Cookie c:cookies){
if(c.getName().equals("username")
c.getName()获取的是什么
为什么要和字符串username作equals比较
for(Cookie c:cookies){
if(c.getName().equals("username")
c.getName()获取的是什么
为什么要和字符串username作equals比较
2017-01-10
1.设置cookie到客户端
Cookie c1 = new Cookie("username","hzh");
response.addCookie(c1);
Cookie c2 = new Cookie("password","123");
//设置生命周期为1小时,秒为单位
c2.setMaxAge(3600);
response.addCookie(c2);
response.getWriter().print("ok");
查看此时的cookie文件,发现只写入了password,因为此时未给 username设置生命周期,它还在客户端的内存中,并为写到文件中(此时客户端关闭此浏览器窗口,就丢失了),想写到客户端,需要加入c1.setMaxAge(3600)在 response.addCookie(c1);之前
以下是写入我电脑中的cookie
2.读取cookie文件
Cookie[] cookies = request.getCookies();
for(Cookie c :cookies ){
System.out.println(c.getName()+"--->"+c.getValue());
}
控制台输出结果如下:
username--->hzh
password--->123
JSESSIONID--->33BEAF95C526E0DDCF6A64990E533845
注意:
1.服务器可以向客户端写内容, 只能是文本内容
2.客户端可以阻止服务器写入,禁用cookies
3.只能读取自己webapp写入的东西
举报