zoukankan      html  css  js  c++  java
  • cookie和session的案例

    小案例:get请求

    登录

    因为是get请求,所以频道了连接里面

    <form action="/WEB04/LuanServlet"  method="get">
        用户名:<input type="text" name="username"><br>
        密码名:<input type="password" name="password"><br>
        <input type="submit"  value="登录">
        </form>

     post请求

    <form action="/WEB04/BodyServlet" method="Post">
        用户名:<input type="text" name="username" ><br>
        爱好:
        <input type="checkbox" name="hobby" value="zq">足球
        <input type="checkbox" name="hobby" value="lq">篮球
        <input type="checkbox" name="hobby" value="ppq">乒乓球
        <br>
        <input type="submit" value="提交">
    </form>
    
    //servlet层
        //获取请求体的参数
            //获取请求体单个值
            String username=request.getParameter("username");
            System.out.println("单个值的username"+username);
            //获取多个值
            String [] hobbys=request.getParameterValues("hobby");
            System.out.println("爱好:");
            for(String s:hobbys){
                System.out.println(s);
            }
            //获取所有值Map集合,获取单个的,多个数组的集合
            Map<String,String[]> map=request.getParameterMap();
            //先获取到set集合的key值。
            Set<String> set=map.keySet();
            for(String key:set){
                String [] value=map.get(key);
                System.out.println(key+":");
                for( String s:value){
                    System.out.println(s+" ");
                }
                System.out.println();
                //System.out.println(key+":"+map.get(key));
            }

    post不会显示信息,安全

     

     

     记录上一次登录的日期:

    //不论如何都会请求的第一次
            //创建日期对象,记录当前访问时间
            Date date=new Date();
            //转换日期格式
            SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            //获取转换后的日期字符串
            String currentTime=sdf.format(date);
            //创建Cookie对象
            Cookie cookie=new Cookie("LastTime",currentTime);
            //设置持久化时间
            cookie.setMaxAge(60*10);
            //发送cookie
            response.addCookie(cookie);
            
            
            //获取客户端携带的cookie---lastTime
            Cookie [] cookies=request.getCookies();
            //定义下lasttime
            String lastTime=null;
            //遍历,获取name是lastTime的cookie对象中的value值
            if(cookies!=null){
            for(Cookie c:cookies){
                //判断cookie和lasttime时间是不是对的上
                if(c.getName().equals("LastTime")){
                    lastTime=c.getValue();
                }
            }
        }
            //解决中文乱码
            response.setContentType("text/html;charset=UTF-8");
            if(lastTime==null){
                response.getWriter().write("您是第一次访问");
                System.out.println("您是第一次访问");
            }else{
                response.getWriter().write("您上次访问的时间是"+lastTime);
                System.out.println("您上次访问的时间是"+lastTime);
            }
        }

    第一次访问浏览器,客户端没有缓存,显示

    如果再次登入:显示相应的时间。2019-09-28 15:53

  • 相关阅读:
    mybatis2入门程序
    mybatis1
    mybeats与jdbc问题分析
    mysqljdbc简单连接释放
    jdbc问题记录
    section,article,div
    HB调试前端开发移动
    HTML,XML,XHTML
    访问地图
    OAuth
  • 原文地址:https://www.cnblogs.com/a199706/p/11603409.html
Copyright © 2011-2022 走看看