Cookie和session

Posted 程序波

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Cookie和session相关的知识,希望对你有一定的参考价值。

1.会话定义:打开浏览器浏览某一个网站--多次请求--浏览器关闭这个过程称之为会话。
2.B   浏览器   /S  服务器
   2.1.浏览器端的会话技术:cookie   JAVA(Cookie)  

  Cookie定义:
         Cookie是在服务器端创建Cookie cookie=new Cookie(“cookie的名称”,“cookie的值”),通过                 HttpServletResponse写回浏览器,


    Cookie 方法 addCookie(cookie),它存贮在浏览器端,会话级别的cookie(存在于浏览器内存当中,关闭浏览器销毁),持久化   cookie(持久化到本地硬盘)
    怎样持久化到硬盘呢?

    设置路径:setPath("") 

    设置最大存活时间setMaxAge(整型的秒>0),

  销毁持久化的cookie:

  创建一个同名的cookie对象, 值设置为null。

  Cookie cookie=new Cookie(“cookie的名称”,null),

  设置路径:setPath("") 

    设置最大存活时间setMaxAge(0),

  写回去覆盖

  response.addCookie(cookie);
                                        
     怎样获取客户端(浏览器)带来的cookie呢?
     Cookie[]  cookies=request.getCookies();
                                        
                                        
  2.2服务器端的会话技术:session  JAVA(HttpSession)
           session基于cookie,当我们session创建以后request.getSession();获取session对象,他会自动向浏览器写回一个cookie这个Cookie的名字
         JSESSIONID:

          他的值就是session.getId() ,那么这个id就唯一标识这个session、
      session做为域对象的使用:
                                               登陆后要把用户信息存到session:
           作用范围:一次会话(有多次请求)
                                                    
3.jsp---查找指定名的cookie简写的方式${cookie.名称.value}}
                                
4.cookie和session的应场景
         1.cookie商品浏览历史记录
         2.记住用户名
         3.购物车(真实项目)(真实购物车--cookie+redis+mysql
                                        
         session(域):
                        1.保存用户信息
                        2.模拟存贮购物车信息(map集合)
                                                   

以上是关于Cookie和session的主要内容,如果未能解决你的问题,请参考以下文章

session和cookie区别

session和cookie区别

Cookie 和 Session

Cookie 和 Session

问心 | 再看tokensession和cookie

cookie与session