zoukankan      html  css  js  c++  java
  • JavaWeb利用cookie记住账号

    JavaWeb利用cookie记住账号。

    首先,来看看界面什么样子。


    登录页面的记住账号

    记住账号最普遍的做法,就是在点击登录时,将账号保存到cookie中。

    材料准备

    <script src="${ctx}/background/js/jquery-1.7.2.js" type="text/javascript"></script>
    <script src="${ctx}/background/js/jquery.cookie.js" type="text/javascript"></script>

    去找一下这两个文件,引入到你所在的页面。

    form表单

    <form action="${ctx}/j_spring_security_check" method="post" id="login_form">
    
                        <p>
                            <label>用户名:</label>
                            <input type="text" name="j_username" id="j_username" size="20" class="login_input" autocomplete="off"/>
                        </p>
                        <p>
                            <label>密&nbsp;&nbsp;&nbsp;码:</label>
                            <input type="password" name="j_password" size="20" class="login_input" />
                        </p>
                        <p>
                            <input type="checkbox" value="true" id="j_remember"/><label>&nbsp;&nbsp;&nbsp;&nbsp;</label>记住我的账号
                        </p>
    
                        <div class="login_bar">
                            &nbsp;&nbsp;<input class="sub" type="submit" value=" " />
                        </div>
                    </form>

    注意,我使用了spring的security。

    核心内容

    创建一份login.js,而且在login.jsp中引入。

    var COOKIE_NAME = 'sys__username';
    $(function() {
        if ($.cookie(COOKIE_NAME)){
            $("#j_username").val($.cookie(COOKIE_NAME));
            $("#j_password").focus();
            $("#j_remember").attr('checked', true);
        } else {
            $("#j_username").focus();
        }
    
        $("#login_form").submit(function(){
            var $remember = $("#j_remember");
            if ($remember.attr('checked')) {
                $.cookie(COOKIE_NAME, $("#j_username").val(), { path: '/', expires: 15 });
            } else {
                $.cookie(COOKIE_NAME, null, { path: '/' });  //删除cookie
            }
        });
    
    });
    1. 当页面载入的时候,先去推断是否有cookie保存,假设有,则将用户名从cookie中取出。显示在用户名输入框中。
    2. 当表单进行提交的时候,假设用户选择记住用户名,那么将用户名保存在cookie中,否则,删除相应的cookie信息。

    cookie方法介绍

    实例 方法 备注
    创建一个会话cookie $.cookie(‘cookieName’,’cookieValue’); 所创建的cookie有效期默认到用户浏览器关闭止,故被称为会话cookie。

    创建一个持久cookie $.cookie(‘cookieName’,’cookieValue’,{expires:15}); 当指明时间时,故称为持久cookie,而且有效时间为15天。

    创建一个持久并带有效路径的cookie $.cookie(‘cookieName’,’cookieValue’,{expires:15。path:’/’}); 假设不设置有效路径。在默认情况下。仅仅能在cookie设置当前页面读取该cookie,cookie的路径用于设置可以读取cookie的顶级文件夹。
    获取cookie $.cookie(‘cookieName’); 假设存在则返回cookieValue。否则返回null
    删除cookie $.cookie(‘cookieName’,null); 假设想删除一个带有效路径的cookie。例如以下:$.cookie(‘cookieName’,null,{path:’/’});

    总结:假设你想保存密码,当然和用户名差点儿相同,只是你须要jquery.md5.js这样一份文件,用来将你保存的密码显示在密码框中。

  • 相关阅读:
    Qt制作应用插件
    isHiden和isVisible的区别(isVisible更可靠)
    QT解析命令行(QCommandLineOption和QCommandLineParser类)
    delphi 各新版本特性收集
    java遍历Set集合
    全局忽略编译警告(设置QMAKE_CXXFLAGS )
    配置QtCreator+CDB远程调试环境(要设置_NT_SYMBOL_PATH和QT_PLUGIN_PATH和Path)
    设置程序版本等信息(可直接修改pro文件设置,但是更推荐使用rc文件设置)
    移动无边框窗体(设置标志位更流畅,或者发送WM_SYSCOMMAND和SC_MOVE + HTCAPTION消息)
    让VC2012生成的程序支持XP系统(修改mkspecswin32-msvc2012qmake.conf,QT的DLL都是支持XP的,只与EXE有关)good
  • 原文地址:https://www.cnblogs.com/gcczhongduan/p/5182216.html
Copyright © 2011-2022 走看看