用cookie实现记住密码

1.jsp

<%
String name="";
String pwd="";
Cookie[] cook=request.getCookies();
if(cookie!=null)
{
  for(int i=0;i<cook.length;i++)
  {
    if(cook[i].getName().equals("myCookieName"))
    {
        name=cook[i].getValue();
     }
    if(cook[i].getName().equals("myCookiePwd"))
    {
        pwd=cook[i].getValue();
     }
   }
 }
%>
<form name="postion_login_from" action="UserServlet"  method="post">
    <table>
    <tr><td class="comm">用户名:</td>
        <td><input type="text" name="pname" value="<%=name%>">
        </td>
    </tr>
    <tr><td class="comm">密码:</td>
        <td><input type="text" name="pwd" value="<%=pwd%>" >
        </td>
    </tr>
    </table>
    </form>

2.servlet

Cookie myCookieName=new Cookie("myCookieName",uname);                          myCookieName.setMaxAge(1*24*60*60);                         response.addCookie(myCookieName);
Cookie myCookiePwd=new Cookie("myCookiePwd",upwd);                         myCookiePwd.setMaxAge(1*24*60*60);                      response.addCookie(myCookiePwd);

其中uname和upwd是你登录时从数据库中获取的用户名和密码。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
实现记住密码或者自动登录功能,可以使用cookie或session来存储用户信息。具体实现步骤如下: 1. 在登录页面添加一个复选框,让用户选择是否记住密码或自动登录。 2. 在后台处理登录验证时,如果用户选择了记住密码或自动登录,就在cookie或session中保存用户信息,例如用户名和密码或者用户ID等。 3. 在用户下次访问该网站时,先检查cookie或session中是否存在用户信息,如果存在,则直接跳转到用户主页,实现自动登录;如果不存在,则跳转到登录页面,让用户重新登录。 以下是一个使用cookie实现记住密码或自动登录的示例: ```jsp <% // 处理登录请求 String username = request.getParameter("username"); String password = request.getParameter("password"); String remember = request.getParameter("remember"); // 验证用户名和密码是否正确 boolean isValidUser = validateUser(username, password); if (isValidUser) { // 如果用户选择了记住密码或自动登录,就创建一个cookie保存用户信息 if ("on".equals(remember)) { Cookie cookie = new Cookie("userInfo", username + ":" + password); cookie.setMaxAge(7 * 24 * 60 * 60); // 设置cookie有效期为7天 response.addCookie(cookie); } // 将用户信息保存到session中 HttpSession session = request.getSession(); session.setAttribute("userInfo", username); // 跳转到用户主页 response.sendRedirect("main.jsp"); } else { // 登录失败,返回登录页面 response.sendRedirect("login.jsp?error=1"); } %> ``` 在用户下次访问网站时,可以在页面加载时检查cookie中是否存在用户信息,如果存在,则直接跳转到用户主页: ```jsp <% // 检查cookie中是否存在用户信息 String userInfo = null; Cookie[] cookies = request.getCookies(); if (cookies != null) { for (Cookie cookie : cookies) { if ("userInfo".equals(cookie.getName())) { userInfo = cookie.getValue(); break; } } } // 如果存在用户信息,则直接跳转到用户主页 if (userInfo != null) { String[] parts = userInfo.split(":"); String username = parts[0]; String password = parts[1]; boolean isValidUser = validateUser(username, password); if (isValidUser) { HttpSession session = request.getSession(); session.setAttribute("userInfo", username); response.sendRedirect("main.jsp"); } } %> ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值