1. 程式人生 > >關於如何使用cookie 記住使用者名稱和密碼

關於如何使用cookie 記住使用者名稱和密碼

表單

                        <td>使用者名稱:</td>
                            <td><input type="text" name="userName" value="${cookie.userName.value}" onfocus="gogo('userName')" onblur="checkName()"></td>
                        <td id="resuName"></td>
                        </tr>
                        <tr>
                            <td>登入密碼:</td>
                            <td><input type="password" name="pwd" value="${cookie.password.value

}" onfocus="gogo('resuPwd')" onblur="checkPwd()"></td>
                        <td id="resuPwd"></td>
                        </tr>
                        <tr>
                        <td><input type="checkbox" name="isChecked" checked>儲存使用者名稱和密碼</td>

                        </tr>

其中${cookie.userName.value} 中的cookie  是內建物件 不可是其他  userName  是後臺存的cookie變數名

後臺處理

//首先判斷你是否勾選了複選框
if(request.getParameter("isChecked")!=null){
//不等於空,則說明 勾選了 則將使用者名稱和密碼存放在cookie中去
Cookie  userNameCookie = new Cookie("userName", userName);
Cookie  passCookie  = new Cookie("password", password);
//設定Cookie存活時間
userNameCookie.setMaxAge(60000);
passCookie.setMaxAge(60000);
response.addCookie(userNameCookie);
response.addCookie(passCookie);
}
else{//如果你沒有勾選cookie的話,但是可能以前點過。則清空cookie
Cookie[] cookie =request.getCookies();
if(cookie!=null&&cookie.length>0){
for(Cookie c:cookie ){
if(c.getName().equals("userName")||c.getName().equals("password")){
c.setMaxAge(0);
response.addCookie(c);
}
}

另外其中前端也可以不使用El表示式  寫判斷也可以。