Cookie

1.会话技术

从打开一个浏览器访问某个站点,到关闭这个浏览器的整个过程,称为一次会话。 话技术就是记录这次会话中客户端态的状与数据的。

会话技术分为Cookie和Session:

Cookie:数据存储在客户端本地,减少服务器端的存储的压力,安全性不好,客户端 可以清除cookie

Session:将数据存储到服务器端,安全性相对好,增加服务器的压力

a.服务器端怎样将一个Cookie发送到客户端(Cookie中不能存储中文)

//创建cookiie 对象
         Cookie cookie = new Cookie("goods", "iphone");
        //设置cookie在客户端的持久时间
         cookie.setMaxAge(60*2);
        //设置cookie 携带路径
         cookie.setPath("/WEB06");
        //发送cookiie给客户端
        response.addCookie(cookie);

关于携带路径:

1.如果不设置携带路径,那么该cookie信息会在访问产生该cookie的 web资源所在的路径都携带cookie信息

示例:

cookie.setPath("/WEB16");

代表访问WEB16应用中的任何资源都携带cookie

cookie.setPath("/WEB16/cookieServlet");

代表访问WEB16中的cookieServlet时才携带cookie信息

b.服务器端怎样接受客户端携带的Cookie

//获取客户端的cookie
        Cookie [] cookies = request.getCookies();
        //判断集合是否为空
        if(cookies!=null){        
            for(Cookie cookie:cookies){
                //获得cookie名
                String cname = cookie.getName();    
                if(cname.equals("goods")){
                    //获取cookiev值
                    System.out.println(cookie.getValue());
                }
            }
        }

 c.删除cookie

如果想删除客户端的已经存储的cookie信息,那么就使用同名同路径的持久化时间为0cookie进行覆盖即可

 

//创建cookie名字和要删除的cookie一致
        Cookie cookie = new Cookie("goods", "iphone");
        //设置cookie持久化时间为0
        cookie.setMaxAge(0);    
        //设置携带路径
        cookie.setPath("/WEB06");
        //发送Cookie覆盖之前的cookie
        response.addCookie(cookie);
原文地址:https://www.cnblogs.com/lxzwhite/p/10654459.html