1. 程式人生 > >Java使用SSM框架實現登錄頁面記住密碼功能

Java使用SSM框架實現登錄頁面記住密碼功能

turn 頁面 賦值 ++ mage login ring 實現 member

最終效果展示:

技術分享圖片

1、登錄頁面JSP代碼

<label class="checkbox">
     <input type="checkbox" name="rememberMe" id="rememberMe" onclick="remember();"/> 記住密碼
</label>
技術分享圖片
      //選中記住密碼觸發事件,如果選中就賦值為1 ,否則賦值為0
        function remember(){
            var remFlag = $("input:checkbox").is(‘:checked‘);
            if(remFlag){ 
                //cookie存用戶名和密碼,回顯的是真實的用戶名和密碼,存在安全問題.
                var conFlag = confirm("記錄密碼功能不宜在公共場所使用,以防密碼泄露.您確定要使用此功能嗎?");
                if(conFlag){ 
                    //確認標誌
                    $("#rememberMe").val("1");
                }else{
                    $("input:checkbox").removeAttr(‘checked‘);
                    $("#rememberMe").val("0");
                }
            }else{ 
                //如果沒選中設置remFlag為""
                $("#rememberMe").val("0");
            }
        }


技術分享圖片

技術分享圖片
//啟動函數來獲取cookie中保存的用戶信息
$(function(){
       //cookie數據保存格式是key=value;key=value;形式,loginInfo為保存在cookie中的key值,具體看controller代碼 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 "";
        }
技術分享圖片

2、登錄請求後controller代碼

技術分享圖片
//創建Cookie對象,保存用戶信息,設定cookie失效時間,通過response添加cookie
if ("1".equals(cookieFlag)) { String loginInfo = username + "," + password; Cookie userCookie = new Cookie("loginInfo", loginInfo); userCookie.setMaxAge(1 * 24 * 60 * 60); // 存活期為一天 1*24*60*60 userCookie.setPath("/"); res.addCookie(userCookie); }

Java使用SSM框架實現登錄頁面記住密碼功能