Cookie使用详解教程

Cookie详解

存储方式
键值对存储
Cookie c = new Cookie("key","value"); 
参数介绍
Cookie cookie = new Cookie("user","用户信息");    // 新建一个Cookie对象
cookie.setMaxAge(24*60*60);   // 设置过期时间1天,以秒为单位
cookie.setPath("/");   //同一服务器内所有应用都可访问到该Cookie
response.addCookie(cookie);   // 保存cookie到客户端
获取Cookie
Cookie[] cookies = request.getCookies();
cookies.getName();  //获取cookie的key(名称)
cookies.getValue(); //获取cookie的value(值)
删除Cookie
cookie.setMaxAge(0); 

自动登录

后端代码
 //将用户信息保存到Cookie中
Cookie cookie = new Cookie("user",manage1.getUserName()+"&"+manage1.getPassWord()+"&true");
cookie.setPath("/");
//下次自动登录选择
String autoLogin = request.getParameter("autoLogin");
if ("ok".equals(autoLogin)){  //用户点了下次自动登录
    System.out.println("自动登录:"+autoLogin);
    log.info("用户选择了自动登录功能:{}",autoLogin);
    cookie.setMaxAge(60*60*24*7);  //cookie设置保存7天
}else{
    cookie.setMaxAge(0);
}
//将cookied对象保存到客户端
response.addCookie(cookie);
//将用户信息存储到session中
request.getSession().setAttribute("user",manage1);
前端代码
<input type="checkbox" name="autoLogin" id="ziDong" value="ok" placeholder="自动登录">
<span>自动登录</span>

记住密码

后端代码
//记住密码功能
//将用户信息保存到Cookie中
Cookie cookieJz = new Cookie("jzPass",manage1.getUserName()+"&"+manage1.getPassWord()+"&true");
cookieJz.setPath("/");
//用户选择记住密码
String jzPass = request.getParameter("jzPass");
if ("ok".equals(jzPass)){  //用户选择了记住密码
    System.out.println("-----------用户选择了记住密码功能:"+jzPass);
    cookieJz.setMaxAge(60*60*24*7);  //cookie设置保存7天
}else{
    cookieJz.setMaxAge(0);
}
//将cookied对象保存到客户端
response.addCookie(cookieJz);

System.out.println("登陆成功,转到index首页面");
request.getRequestDispatcher("/WEB-INF/jsp/login/mIndex.jsp").forward(request,response);
return;
前端代码
<%

        String username = "";
        String password = "";
        String jzPass = "";
        Cookie[] cookies = request.getCookies();
        if (cookies != null){
            for (Cookie cookie:cookies){
                //是否记住密码
                if ("jzPass".equals(cookie.getName())){
                    String value = cookie.getValue();
                    String[] values = value.split("&");
                    username = values[0];
                    password = values[1];
                    jzPass = values[2];
                }
            }
        }

%>
<script>

    var jzPass = document.getElementById("jiZhu");
    jzPass.checked = <%=jzPass %>;// 设置记住密码复选框为选中状态

</script>
<input type="checkbox" name="jzPass" id="jiZhu" value="ok" placeholder="记住密码">
<span>记住密码</span>


没有人陪你走一辈子,所以你要适应孤独;
没有人会帮你一辈子,所以你要一直奋斗。
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值