Servlet操作Cookie
程序员文章站
2024-03-20 14:08:10
...
cookie的创建和发送
通过 new Cookie(“key”,”value”); 来创建一个 Cookie 对象,要想将 Cookie 随响应发送到客户 端,需要先添加到 response 对象中, resp.addCookie(cookie); 此时该 cookie 对象则随着响应发送 至了客户端。
//cookie的创建和发送
Cookie cookie = new Cookie("uname","jackma");
Cookie cookie2 = new Cookie("upwd","123456");
Cookie cookie4 = new Cookie("uname","tonyma");
response.addCookie(cookie);
response.addCookie(cookie2);
response.addCookie(cookie4);
//键名相同时,值会覆盖
cookie到期时间的设定
cookie到期时间,到期时间用来指 定该 cookie 何时失效。默认为当前浏览器关闭即失效。我们可以手动设定 cookie 的有效时间(通过到 期时间计算),通过 setMaxAge(int expiry); 方法设定 cookie 的大有效时间,以秒为单位。
大于 0 的整数,表示存储的秒数;若为负数,则表示不存储该 cookie;若为 0,则删除该 cookie。
//cookie到期时间的设定,三种情况,-1,0,正整数,需写在cookie发送之前
// cookie.setMaxAge(-1);
// 浏览器关闭,cookie即失效
cookie.setMaxAge(10);
// //单位为秒,10秒后cookie失效
// cookie.setMaxAge(0);
// //cookie立即失效
cookie的获取
在服务器端只提供了一个 getCookies() 的方法用来获取客户端回传的所有 cookie 组成的一个数 组,如果需要获取单个 cookie 则需要通过遍历,getName() 获取 Cookie 的名称,getValue()获取 Cookie 的值。
//cookie的获取
Cookie[] cookies = request.getCookies();
//判断是否为空
if(cookies!=null && cookies.length>0) {
for(Cookie cookie3 : cookies) {
String uname = cookie3.getName();
String upwd = cookie3.getValue();
System.out.println("uname:"+uname+";upwd:"+upwd);
}
}
上一篇: NOIP2017模拟赛10.02
下一篇: EasyExcel导出excel使用教程