美文网首页
(7) Cookie对象的使用

(7) Cookie对象的使用

作者: 笑笑学生 | 来源:发表于2016-09-09 23:59 被阅读55次

核心代码:
cookie.jsp

  <body>
  <%
    Cookie thisCookie = null;
    boolean cookieFound = false;
    Cookie[] cookies = request.getCookies();
    if(cookies!=null){
        for(int i=0;i < cookies.length;i++){
            thisCookie = cookies[i];
            if(thisCookie.getName().equals("CookieCount")){
                cookieFound = true;
                break;
            }
        }
    }
    out.println("<h1>Cookie 计数器</h1>");
    if(cookieFound){
        int cookieCount = Integer.parseInt(thisCookie.getValue());
        cookieCount++;
        out.println("这是1分钟内第"+cookieCount+"次访问本页");
        thisCookie.setValue(String.valueOf(cookieCount));
        thisCookie.setMaxAge(60*1);
        response.addCookie(thisCookie);
    }
    if(cookieFound==false){
        out.println("你在近1分钟内没有访问过此页,现在是第一次访问");
        thisCookie = new Cookie("CookieCount","1");
        thisCookie.setMaxAge(60*1);
        response.addCookie(thisCookie); 
    }
  %>    
  </body>

cookieIndex.jsp

  <body>
    <%  
        String strUser=null;
        String strPass=null;
        boolean cookieFound = false;
        
        //获取Cookie信息,并将值传入文本框
        Cookie[] cookies = request.getCookies();
        if(cookies!=null){
            for(int i=0;i<cookies.length;i++){
                if(cookies[i].getName().equals("user")){
                    strUser = cookies[i].getValue();
                }
                if(cookies[i].getName().equals("pass")){
                    strPass = cookies[i].getValue();
                }
            }
            if(strUser!=null && strPass!=null){
                cookieFound = true;
                out.println(strUser);
                out.println(strPass);
            }
        }
        
        //实现页面跳转
        if(cookieFound){
            out.println("自动登录");
            //response.sendRedirect("cookie.jsp");
        }
        
        //若没有Cookie,则创建Cookie对象.
        //if...else if...替代多层if嵌套。
        if(cookieFound==false){
            strUser = (String)request.getParameter("user");
            strPass = (String)request.getParameter("pass");
            String strRecode = (String)request.getParameter("recode");
            //判断是否勾选记住密码,及密码验证(字符是否为空,是否匹配,是否记住,创建Cookie)
            if(strUser!=null && strPass!=null){
                if(strUser.equals("xue") && strPass.equals("123")){
                    if(strRecode == null){
                        strRecode="";
                    }else if(strRecode.equals("recode")){
                        Cookie user = new Cookie("user",strUser);
                        Cookie pass = new Cookie("pass",strPass);
                        user.setMaxAge(30);
                        user.setMaxAge(30);
                        response.addCookie(user);
                        response.addCookie(pass);
                        out.println("记住密码成功");
                    }
                    response.sendRedirect("cookie.jsp");
                }else{
                    out.println("密码错误");
                }
            }else{
                strUser="";
                strPass="";
            }
        }
        
    %>
    
  <form action="">
    用户名:<input type="text" name="user" value="<% if(strUser!=null) out.println(strUser);%>" /><br>
    密码:<input type="text" name="pass" value="<% if(strPass!=null) out.println(strPass);%>" /><br>
    记住密码:<input type="checkbox" value="recode" name="recode"/>
    <input type="submit" value="submit" name="submit"/>
  </form>

  </body>

相关文章

  • (7) Cookie对象的使用

    核心代码:cookie.jsp cookieIndex.jsp

  • jsp-cookie

    使用JSP设置Cookie (1)创建一个Cookie对象: 调用Cookie的构造函数,使用一个cookie名称...

  • 第十四章: 会话、用户和注册

    存取Cookie 写cookie 需要使用HttpResponse对象的set_cookie()方法 respon...

  • (转)细说Cookie

    细说Cookie 阅读目录 开始 Cookie 概述 Cookie的写、读过程 使用Cookie保存复杂对象 Js...

  • cookie

    通过cookie类实例化cookie对象,使用response.addCokie()写入cookie写入cooki...

  • 4.会话管理技术

    7.会话管理技术 7.1Cookie详解 Cookie 是sun公司定义的一个操作cookie对象,cookie理...

  • cookie的创建、读取和删除

    1, cookie的创建、读取和删除 在JS中,可以使用Document对象的cookie属性操作cookie。 ...

  • 2018-09-24Session与Cookie

    Session与Cookie的区别 将写好的cookie改为session的使用 首先定义sessions对象 相...

  • Flask之六:cookie与session

    一、Cookie 用response对象的set_cookie方法来设置(更新)cookie 用request对象...

  • Document对象

    Document 元数据 怪异模式 compatMode 使用Location对象 cookie 就绪状态 doc...

网友评论

      本文标题:(7) Cookie对象的使用

      本文链接:https://www.haomeiwen.com/subject/qmlyettx.html