• java cookie学习


    打开一个游览器访问某个站点,然后关闭游览器这就叫一次会话。

    会话技术有2种,cookie和session

    cookie:是把数据储存到客户端,安全性能不好(如果在网吧登录网页保留了cookie,下个使用者可能会盗取你的cookie),可以手动清除数据

    session:数据存储到服务器中,对硬件要求较高,安全性能好

     cookie的创建

    1 //1.创建Cookie对象
    2         //Cookie cookie = new Cookie("goods","huashengmi");
    3         //设置cokie持久化时间
    4         //cookie.setMaxAge(2*60);
    5         //设置cookie的携带路径
    6         //cookie.setPath("Web0707/com.oracle.demo01/SendCookieServlet");
    7     //    cookie.setPath("/Web0707"); //访问web0707下的任何资源都携带
    8         //发送cookie
    9         //response.addCookie(cookie);

    如果设置了cookie的持久化时间,想更改,可以创建一个同名的cookie,相同路径,然后设置0秒覆盖即可

    1     //删除设置的cookie持久化时间
    2         Cookie cookie = new Cookie("goods","huashengmi");
    3         cookie.setPath("/Web0707");
    4         //设置时间为0
    5         cookie.setMaxAge(0);
    6         response.addCookie(cookie);

    接收客户端发送来的cookie

     1 //接收客户端发送的cookie
     2         //用cookie数组接收键值对
     3         Cookie[] cookies = request.getCookies();
     4         //先判断下这个cookie数组是不是空的,如果是空的直接没有,增加健壮性
     5         if(cookies!=null){
     6             for(Cookie c:cookies){
     7                 //获取键
     8                 String name = c.getName();
     9                 //如果cookie的键是我要获取的键,就获取值
    10                 if(name.equals(name)){
    11                     String value = c.getValue();
    12                     response.getWriter().write(value);
    13                 }
    14             }
    15 
    16         }

     获取登录时间

     1 //获取时间,转换格式
     2     response.setContentType("text/html;charset=utf-8");
     3     Date date = new Date();
     4     SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd HH:mm:ss");
     5     String sj = sdf.format(date);
     6     //发送cookie
     7     Cookie cookie = new Cookie("time",sj);
     8     cookie.setMaxAge(60);
     9     response.addCookie(cookie);
    10     //再获取客户端发的cookie,返回时间
    11     String xianzai=null;
    12     Cookie[] cookies = request.getCookies();
    13     if(cookies!=null){
    14     for(Cookie c:cookies){
    15         String name = c.getName();
    16         if(name.equals("time")){
    17             xianzai = c.getValue();
    18             response.getWriter().write("上次登录时间:"+xianzai);
    19         }
    20     }
    21     }
    22     //如果没有cookie,时间是空的,就可以判断是第一次登录
    23     if(xianzai==null){
    24         response.getWriter().write("第一次访问");
    25     }        
    26 }

  • 相关阅读:
    留言板
    文件操作1
    JQUERY与JS的区别
    PHP 练习租房
    PHP 投票练习
    PHP,单项查询及多项查询
    PHP 增删改查 import!!
    PHP 数据访问
    PHP 对象及其三大特性
    正则表达式和数组
  • 原文地址:https://www.cnblogs.com/wangrongchen/p/9276956.html
Copyright © 2020-2023  润新知