如题,大家在使用各种网站时,为了更好的用户体验,网站往往会提供这两种功能之一,以便下次登录方便。
今天要讲述的是用java操作cookie来实现这两个功能,网络上也有很多的总结,这里只作为自己知识点的一个记录。其实这两个功能是大同小异的,其核心就是java怎么对cookie进行增加、修改、删除的操作。
1. 创建cookie
Cookie cookie = new Cookie(name, value);// 两个参数全是字符串
response.addCookie(cookie);
上面的cookie没有生命周期,随着浏览器关闭就消失,生存在浏览器内存里。
Cookie cookie = new Cookie(name, value);
cookie.setMaxAge(maxAge);// 这里需要一个整型值,单位为秒
cookie.setPath("/"); // 设置cookie路径,/代表根路径,该cookie对整个网站都有效,如果不设置路径,只有创建该cookie的路径及其子路径可以访问该cookie
response.addCookie(cookie);
上面的cookie声明周期为maxAge。
2. 读取cookie
Cookie[] cookies = request.getCookies();
3. 修改cookie
遍历cookie数组,根据name找到相应的cookie对象,修改之,然后放到response中.
4. 删除cookie
Cookie cookie = new Cookie(name, null);
cookie.setMaxAge(0);// 设置为0,立即删除该cookie
response.addCookie(cookie);