Cookie:記錄使用者登陸狀態,可以在客戶端建立cookie,可以使用戶第二次登陸的時候不用輸入使用者名稱和密碼,也就是可以登陸到首頁
主要代碼:
LoginView 中: (取得cookie)
//取得cookie
Cookie [] cs=request.getCookies();
String name="";
String value="";
if(null!=cs)
{
System.out.println("cs.length:"+cs.length);
for(int i=0;i<cs.length;i++)
{
Cookie c=cs[i];
name=c.getName();
value=c.getValue();
}
}
if(null!=cs&&!(name.trim().equals("JSESSIONID")))
{
request.setAttribute("username",name);
request.setAttribute("userpass",value);
request.getRequestDispatcher("/servlet/Controller1").forward(request,response);
}
Controller 控制器中:(建立cookie)
if(sflag) // if 登陸成功(sflag表示,驗證使用者成功)
{
if(usercheckbox==null)
{
//System.out.println("您沒有選中!!!"); //沒有選中,無操作
}
else
{
//System.out.println("您以選中!"); // 如果選中,則建立cookie
//建立cookie
Cookie cookie=new Cookie(username,userpass);
//設定cookie的時效
cookie.setMaxAge(60*60*24*7*2);
//設定cookie 的使用路徑
cookie.setPath("/");
//發送cookie
response.addCookie(cookie);
}
HttpSession session=request.getSession();
session.setAttribute("userinfo",username); //綁定使用者名稱
response.sendRedirect("/hygj0331/servlet/Controller3");
//傳送到控制器Controller3,用來查詢所有的數據,用來展示數據