一、cookie
1、设置cookie,内容为时间
Cookie cookie = new Cookie("LastAccessTime",System.currentTimeMillis()+"");
//String str = java.net.URLEncoder.encode("中文","UTF-8"); //编码
cookie.setMaxAge(1*30*24*3600);//设置有效期1个月,默认同session有效期
cookie.setPath("/项目名称");//访问整个项目都带cookie
response.addCookie(cookie);//将cookie对象response响应到客户端存储
2、获得cookie信息
Cookie cookies[] = request.getCookies();
//String str = java.net.URLDecoder.decode("编码后的字符串","UTF-8"); // 解码
for(int i = 0;cookie!=null&&i<cookies.length;i++){
if(cookies[i].getName().equals("LastAccessTime")){
long cookieValues = Long.parseLong(cookies[i].getVlues());//将String转化为10进制Long型
Date date = new Date(cookieValues);
response.getWrite().print(date);
}
}
二、session(getSession()——>默认session30分钟未使用销毁
1、设置session
//设置20分钟时长
<session-config>
<session-timeout>20</session-timeout>
</session-config>
HttpSession session = request.getSession();
session.setAttribute("name","哈哈哈哈");
2、得到session
HttpSession session = request.getSession();
//HttpSession session = request.getSession(false);//只获取不创建
String str = (String)session.getAttribute("name");
3、session配置,配置时间
<seeeion-config>
<session-timeout>20</session-timeout>
</session-config>
4、session摧毁
HttpSession session = request.getSession();
session.invalidate();
//session.removeAttribute("XXX");//移除某个session
5、使用地址重写方式获得session,只有在cookie禁用下会重写
request.getSession();
String url1 = response.encodingURL("需要重写的地址1");
String url2 = response.encodingURL("需要重写的地址2");
PrintWriter out = response.getWriter;
out.print("<a href = '"+url1+"'>XXXX</a>");
out.print("<a href = '"+url2+"'>YYYY</a>");