Cookie实现记住密码代码

 jsp页面

<%--
  Created by IntelliJ IDEA.
  User: 60590
  Date: 2019/11/28
  Time: 14:10
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
    <base href=<%= request.getContextPath()%>/>
</head>

<body>
<%   String value="";
    String value1="";
    String check="";
//读取Cookie的内容 Cookie[] cookies = request.getCookies(); if (cookies!=null){ for (int i = 0; i <cookies.length ; i++) { if ("uname".equals(cookies[i].getName())){ value = cookies[i].getValue(); //只要进入了if,说明记录了账号和密码 check="checked"; } if ("pwd".equals(cookies[i].getName())){ value1 = cookies[i].getValue(); } } } %> <form action="login" method="get"> <p>用户名:<input type="text" name="uname" value="<%=value%>"></p> <p>密码:<input type="password" name="pwd" value="<%=value1%>"></p> <% Object msg = request.getAttribute("msg"); %> <p style="color: red"><%=msg==null?"":msg%></p> <p><input type="checkbox" name="ck" value="yes" <%=check%>>记住密码</p> <p><input type="submit" value="登陆"></p> </form> </body> </html>

  servlet代码package com.bjsxt.servlet;


package com.bjsxt.servlet;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

/**
* @program: JavaEE
* @description
* @author: wuhao
* @create: 2019-11-28 14:15
**/
@WebServlet("/login")
public class LoginServlet extends HttpServlet {
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//设置编码
req.setCharacterEncoding("utf-8");
resp.setContentType("text/html;charset=UTF-8");

//获取请求数据
String uname = req.getParameter("uname");
String pwd = req.getParameter("pwd");
String ck = req.getParameter("ck");
//处理请求(理应掉业务逻辑层)
boolean flag = false;
if ("张三".equals(uname) && "123".equals(pwd)) {
flag = true;
}
if (flag) {
// 判断是否记住密码
if ("yes".equals(ck)) {
//记录账号密码
Cookie cookie = new Cookie("uname", uname);
Cookie cookie1 = new Cookie("pwd", pwd);
//设置时间
cookie.setMaxAge(3600 * 24 * 3);
cookie1.setMaxAge(3600 * 24 * 3);
//设置路径
cookie.setPath("/day14/login.jsp");
cookie1.setPath("/day14/login.jsp");
//放入响应头中
resp.addCookie(cookie);
resp.addCookie(cookie1);

}
req.getRequestDispatcher("success.jsp").forward(req, resp);
} else {
// resp.sendRedirect("login.jsp");
req.setAttribute("msg", "账号或密码不正确");
req.getRequestDispatcher("login.jsp").forward(req,resp );

}


}
}
原文地址:https://www.cnblogs.com/ww103/p/11954212.html