您的位置:首页 > 编程语言 > Java开发

java spring实现记住账号和密码

2018-02-06 18:04 141 查看
jsp页面:

js:

$(document).ready(function(){

        //记住密码功能

        var str = getCookie("loginInfo");

        str = str.substring(1,str.length-1);

        var username = str.split(",")[0];

        var password = str.split(",")[1];

        //自动填充用户名和密码

        $("#username").val(username);

        $("#password").val(password);

 });

 //获取cookie

 function getCookie(cname) {

     var name = cname + "=";

     var ca = document.cookie.split(';');

     for(var i=0; i<ca.length; i++) {

         var c = ca[i];

         while (c.charAt(0)==' ') c = c.substring(1);

         if (c.indexOf(name) != -1) return c.substring(name.length, c.length);

     }

     return "";

 }

 //记住密码功能

 function remember(){

     var remFlag = $("input[type='checkbox']").is(':checked');

     if(remFlag==true){ //如果选中设置remFlag为1

         //cookie存用户名和密码,回显的是真实的用户名和密码,存在安全问题.

         var conFlag = confirm("记录账户和密码功能不宜在公共场所(如网吧等)使用,以防密码泄露.您确定要使用此功能吗?");

         if(conFlag){ //确认标志

             $("#remFlag").val("1");

         }else{

             $("input[type='checkbox']").removeAttr('checked');

             $("#remFlag").val("");

         }

     }else{ //如果没选中设置remFlag为""

         $("#remFlag").val("");

     }

 }

<div class="block">

    <p class="block-heading">用户登录</p>

    <div class="block-body">

     <form id="login_form"

      action="${pageContext.request.contextPath}/platform/login.htm"

      method="post">

      <input type="hidden" name="remFlag" id="remFlag"/>

      <label>用户名</label>

      <input autocomplete="off" id="username" name="username" value="${userName}" type="text" placeholder="请输入用户名" class="span12">

      <label>密码</label>

      <input name="password" id="password" type="password" class="span12" autocomplete="off" value="${userPass}"  placeholder="请输入用密码" >

      <label>验证码</label>

      <input autocomplete="off" style="width: 150px;" id="code" name="code" type="text"  placeholder="请输入验证码" class="span12"  onblur="document.getElementById('enter').focus();">

      <img alt="验证码" id="scode" style="width: 75px; height:30px; margin-bottom: 9px; " src="${pageContext.request.contextPath}/platform/getCode.htmc" >

      <a href="#" onclick="javascript:flushCode();"><font style="font-style:italic;" size="1">看不清?换一张</font></a><br>

      <input name="aaaa" type="checkbox" onclick="remember();">记住账号和密码

      <a id="enter" href="#*" class="btn btn-primary pull-right" onclick="toLogin()">立即登录</a>

     </form>

    </div>

   </div>

后台controller:

String userName = RequestTools.getParameter(request,"username","");

  String userPass = RequestTools.getParameter(request,"password","");

  //记住用户名、密码功能(注意:cookie存放密码会存在安全隐患)

        String remFlag = request.getParameter("remFlag");

        if("1".equals(remFlag)){

         //"1"表示用户勾选记住密码

            String loginInfo = userName+","+userPass;

            Cookie userCookie=new Cookie("loginInfo",loginInfo);

            userCookie.setMaxAge(30*24*60*60);   //存活期为一个月 30*24*60*60

            userCookie.setPath("/");

            response.addCookie(userCookie);

        }

        request.setAttribute("userName", userName);

        request.setAttribute("userPass", userPass);

就ok了


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: