<%-- ${cookie.username.name} = ${cookie.username.value}--%>
<%-- ${cookie.password.name} = ${cookie.password.value}--%>
<!--如果username和password不等于空,就把cookie中的用户名与密码发送给服务器 -->
<c:if test="${!empty cookie.username && !empty cookie.password}">
<jsp:forward page="/UserServlet?method=login">
<jsp:param name="username" value="${cookie.username.value}"/>
<jsp:param name="password" value="${cookie.password.value}"/>
</jsp:forward>
</c:if>
//如果来成功执行处.我们来把用户名与密码保存到cookie中
Cookie usernameCookie = new Cookie("username" , login.getUsername());
usernameCookie.setPath(req.getContextPath()+"/pages/user/login.jsp");//只有在访问login.jsp时.才会发送cookie
usernameCookie.setMaxAge(60*60*24*7);//保存7天
Cookie passwordCookie = new Cookie("password" , login.getPassword());
passwordCookie.setPath(req.getContextPath()+"/pages/user/login.jsp");
passwordCookie.setMaxAge(60*60*24*7);
resp.addCookie(usernameCookie);
resp.addCookie(passwordCookie);
package com.softeem.utils;
import javax.servlet.http.Cookie;
public class CookieUtils {
/**
* 查找指定名称的Cookie 对象
*
* @param name
* @param cookies
* @return
*/
public static Cookie findCookie(String name, Cookie[] cookies) {
if (name == null || cookies == null || cookies.length == 0) {
return null;
}
for (Cookie cookie : cookies) {
if (name.equals(cookie.getName())) {
return cookie;
}
}
return null;
}
}
Cookie[] cookies = req.getCookies();
Cookie usernameCookie = CookieUtils.findCookie("username", cookies);
if(usernameCookie!=null){
usernameCookie.setMaxAge(0);//设置0就表式立即删除
resp.addCookie(usernameCookie);//立即删除掉该Cookie
}
Cookie passwordCookie = CookieUtils.findCookie("password", cookies);
if(passwordCookie!=null){
passwordCookie.setMaxAge(0);
resp.addCookie(passwordCookie);
}
以上经过测试,还是有bug
只好另寻他路
Cookie usernameCookie = new Cookie("username" , "");
usernameCookie.setPath(req.getContextPath()+"/pages/user/login.jsp");
usernameCookie.setMaxAge(0);//设置0就表式立即删除
resp.addCookie(usernameCookie);//立即删除掉该Cookie
Cookie passwordCookie = new Cookie("password" , "");
passwordCookie.setPath(req.getContextPath()+"/pages/user/login.jsp");
passwordCookie.setMaxAge(0);
resp.addCookie(passwordCookie);
resp.sendRedirect(req.getContextPath()+"/pages/user/login.jsp");
<c:remove scope=“session” var=“msg”></c:remove>
<c:remove scope=“session” var=“username”></c:remove>
<c:remove scope=“session” var=“password”></c:remove>