Cookie技术随笔
Cookie是什么呢,它像一张表,保存用户信息到客户端,有名字和值两部分组成,一般保存在C://Documents and Settings目录下
如何创建一个Cookie呢?Cookie c = new Cookie(String name,String value);
如何将Cookie添加到客户端呢? response.addCookie(c);
服务器如何读取Cookie呢? request.getCookies();
Cookie存在时间用setMaxAge()方法设置,如果没有设置时间,Cookie是不会被保存的,单位是秒,如果是负数,表示不保存Cookie,如果是0,表示该Cookie会被删除
应用:用cookie保存用户名密码
1 //创建Cookie 2 Cookie name = new Cookie("myname", username); 3 Cookie pass = new Cookie("mypass", password); 4 //设置时间 5 name.setMaxAge(14*24*3600); 6 pass.setMaxAge(14*24*3600); 7 //回写到客户端 8 res.addCookie(name); 9 res.addCookie(pass);
//如果Session中没有用户信息,再看看有没有Cookie信息
//从客户端读取Cookie信息
Cookie[] allCookies = req.getCookies();
int i=0;
//如果allCookies不为空
if(allCookies!=null)
{
//从中取出Cookie
for(i=0;i<allCookies.length;i++)
{
//依次取出Cookie
Cookie tempCookie = allCookies[i];
if(tempCookie.getName().equals("myname"))
{
name=tempCookie.getValue();
}else if(tempCookie.getName().equals("mypass"))
{
passwd =tempCookie.getValue();
}
}
if(!name.equals("")&&!passwd.equals(""))
{
try {
System.out.println("准备跳转logincl页面,username="+name+",password="+passwd);
res.sendRedirect("logincl?username="+name+"&password="+passwd);
return ;
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
try {
res.sendRedirect("login?info=error1");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
posted on 2017-08-16 20:39 John_Baker 阅读(172) 评论(0) 收藏 举报
浙公网安备 33010602011771号