關于使用COOKIE保存登陸賬號密碼問題
<%@ page language="java" import="java.util.*,java.net.*" contentType="text/html; charset=utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
String password="";
String username="";
request.setCharacterEncoding("utf-8");
username = request.getParameter("username");
? ? ?password = request.getParameter("password");
if("admin".equals(username)&&"admin".equals(password)){
? session.setAttribute("loginUser", username);
? ? request.getRequestDispatcher("sucess.jsp").forward(request, response);
}
else{
?
response.sendRedirect("false.jsp");
}
request.setCharacterEncoding("utf-8");
? ? ? ?//首先判斷用戶是否選擇了記住登錄狀態(tài)
? ? ? ?String[] isUseCookies = request.getParameterValues("isUseCookie");
? ? ? ?if(isUseCookies!=null&&isUseCookies.length>0)
? ? ? ?{
? ? ? ? ? //把用戶名和密碼保存在Cookie對象里面
? ? ? ? ? String username1 = URLEncoder.encode(request.getParameter("username"),"utf-8");
? ? ? ? ? //使用URLEncoder解決無法在Cookie當中保存中文字符串問題
? ? ? ? ? String password1 = URLEncoder.encode(request.getParameter("password"),"utf-8");
? ? ? ? ??
? ? ? ? ? Cookie usernameCookie = new Cookie("username",username1);
? ? ? ? ? Cookie passwordCookie = new Cookie("password",password1);
? ? ? ? ? usernameCookie.setMaxAge(864000);
? ? ? ? ? passwordCookie.setMaxAge(864000);//設置最大生存期限為10天
? ? ? ? ? response.addCookie(usernameCookie);
? ? ? ? ? response.addCookie(passwordCookie);
? ? ? ?}
? ? ? ?else
? ? ? ?{
? ? ? ? ? Cookie[] cookies = request.getCookies();
? ? ? ? ? if(cookies!=null&&cookies.length>0)
? ? ? ? ? {
? ? ? ? ? ? ?for(Cookie c:cookies)
? ? ? ? ? ? ?{
? ? ? ? ? ? ? ? if(c.getName().equals("username")||c.getName().equals("password"))
? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? c.setMaxAge(0); //設置Cookie失效
? ? ? ? ? ? ? ? ? ? response.addCookie(c); //重新保存。
? ? ? ? ? ? ? ? }
? ? ? ? ? ? ?}
? ? ? ? ? }
? ? ? ?}
?%>
</html>
各位大神,看看為什么我這段邏輯代碼無法保存用戶名密碼?謝謝
2016-01-03
好像代碼沒有寫完 ?看視頻