Cookie(饼干)是什么
是各服务器 给客户端保存的很小的一份数据
比如我们 的记住密码,浏览信息等
为什么需要Cookie
http请求是无状态,也就是说 服务器被访问时,服务端对客户端是一视同仁的,不知到客户端是和第一次登陆的关系
制作Cookie
写在servlet 的 get 或 post方法中
response.setContentType("text/html;charset=utf-8");
Cookie cookie = new Cookie("jian","zhi");
//给响应添加一个Cookie
response.addCookie(cookie);
Cookie cookie2 = new Cookie("jian2","zhi");
//给响应添加一个Cookie
response.addCookie(cookie2);
调用客户端 的Cookie
//获取客户端带过来的cookie
Cookie[] cookies = request.getCookies();
//遍历
if(cookies != null){
for (Cookie c : cookies) {
String cookieName = c.getName();
String cookieValue = c.getValue();
System.out.println(cookieName + " = "+ cookieValue);
}
常用方法
// 这些都是属性
都要放在addCookie()上
//关闭浏览器后,cookie就没有了。 ---> 针对没有设置cookie的有效期。
// expiry: 有效 以秒计算。
//正值 : 表示 在这个数字秒过后,cookie将会失效。
//负值: 关闭浏览器,那么cookie就失效, 默认值是 -1
cookie.setMaxAge(60 * 60 * 24 * 7);
//赋值新的值
//cookie.setValue(newValue);
//用于指定只有请求了指定的域名,才会带上该cookie
cookie.setDomain(".haga.com");
//只有访问该域名下的cookieDemo的这个路径地址才会带cookie
cookie.setPath("/CookieDemo");