什么是cookie?cookie有什么作用?
Cookie是服务器通知客户端保存键值对的一种技术。
Cookie对象保存的是一对键值对,新建对象时必须输入其键值。Cookie cookie=new Cookie("key","value");是没有空参构造器的。
在服务器端可以设置多组Cookie对象,并且必须通过response对象调用addCookie(Cookie cookie)方法通知客户端保存该cookie对象。
可以利用Cookie类中的setValue()方法cookie对象改变值:cookie.setValue("newValue");也可以利用客户端保存cookie时如果存在该key时进行覆盖保存的特点进行修改。
可以利用Cookie类中的setPath()方法设置该cookie被选择性的被客户端调用:例如
CookieA path=/工程路径
CookieB path=/工程路径/abc
当浏览器访问路径为:http://ip:port/工程路径/a.html时,CookieA 发送,CookieB不发送
当浏览器访问路径为:http://ip:port/工程路径/abc/a.html时,CookieA 发送,CookieB也发送
最重要的一个功能就是,通过setMaxAge()来控制当前cookie在客户端保存时间。默认时间为一个session
当为负数时,是一次对话(关闭浏览器之前);
当为0时,是立即删除;
当为正数时则是保存的时间,比如cookie.setMaxAge(60*60)为保存1小时,即使中途浏览器被关闭重新开启当前cookie也被保存在客户端。
利用这个功能可以用来保存当前浏览器中的登录账号密码,当第一次访问服务器时,服务器的servlet程序将其保存为一对cookie,然后通知服务器保存并将其
显示到jsp页面中,这样第二次访问的时候页面中会显示已经登陆过的账号。