cookie和session一样,都是一种会话机制,只不过,cookie是将会话状态保存在浏览器中,而session是将会话状态保存在服务器上。其实,sessionid就是用cookie的形式保存在浏览器缓存中的,说白了就是键值对存取数据。
cookie可以保存在运行内存中,也可以保存在浏览器硬盘文件中,只要设置cookie的时间>0,就能将cookie保存的数据保存在浏览器硬盘文件中,十天内免登录就是通过这个方式实现的,以下是cookie的相关代码:
//创建cookie对象
Cookie cookie =new Cookie("username",username);
Cookie cookie1 =new Cookie("password",password);
//给cookie设置时间
cookie.setMaxAge(60*60*24*10);
cookie1.setMaxAge(60*60*24*10);
//给cookie设置访问路径 浏览器访问的是以下设置的路径 就能使用这个cookie对象
cookie.setPath(request.getContextPath());
cookie1.setPath(request.getContextPath());
//将cookie响应给浏览器
response.addCookie(cookie);
response.addCookie(cookie1);