Cookie && Session

Cookie :  一种浏览器与服务器交互数据的方式, 由服务器创建但不会放在服务器, 而是存在本地浏览器, 下一次访问就会把它发送给服务器.

Cookie c  = new Cookie("name", "song");          //新建一个cookie
response.addCookie(c);                                          //保存在浏览器中


Session :  用户打开浏览器访问一个网站开始, 无论在这个网站中访问了多少页面,点击了多少链接, 都属于同一个会话.  直到该用户关闭浏览器为止, 都属于同一个会话.

HttpSession session  =  request.getSession();    //获得当前request中的session
session.setAttribute("name","song");             //session中保存数据
session.getAttribute("name");       -----> song    //session中获得数据


Thinking :  既然Cookie和Session都可以set值(保存数据), 那两者又有什么区别呢? 首先你要明白Cookie与Session的关联, 两者都是Web应用中的会话技术, 只不过存储位置不同, 试想一个场景, 有两个用户 X 与 Y 在双十一都要访问某宝, X的购物车中有一本<< JAVA设计模式>>需要下单, Y购物车中有一本<<三体>>需要下单, 那某宝怎么让他们都能相应的看到自己的对应购物车物品呢? 这是就需要一把钥匙 - cookie, 当X和Y在第一次访问某宝时, 某宝会在他们的浏览器上保存一个cookie,像这样("jsessionid","14141XXX") 但XY两用户是不同jsessionid, 当他们访问某宝时, 会带上该cookie, 服务器会根据该cookie找到对应的session,并得到其中的数据, 所以你可以理解为  cookie 为XY访问某宝的钥匙, 而session为存放购物车数据的仓库, 要注意session不只是应用到上述的场景中,也可以应用到验证登录用户名,密码上.

总结 : 你可以用cookie访问到你在web服务器上的私人session仓库, 每个人的cookie是不同的, 所以对应的session也是不同的, 但是要记住session中存放的数据为一次回话的数据, 所以说当你关闭浏览器或某网页时, 上次的浏览数据可能就没有了.

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. cookie 1.1 什么是cookie cookie 是存储于访问者的计算机中的变量。每当同一台计算机通过...
    cbw100阅读 4,096评论 0 13
  • 一、JSP 1. jsp的介绍 JSP全名为Java Server Pages,中文名叫java服务器页面,本质是...
    圣贤与无赖阅读 556评论 1 0
  • 四月的最后一天班,下班之后来到星沙吃了顿大餐。或许是因为白天看电视剧里面一直在吃牛排的原因,整个下午我就是很想吃牛...
    水水_6eeb阅读 163评论 0 0
  • 被这些“精灵”打动了,秋末冬初之树呈现的美丽要比夏天的它们更有风韵和雅致,更有韵律和节奏。或许,这就叫“生命的成熟...
    敏_hami阅读 859评论 0 0
  • 为父绝君与为君绝父 论
    合得阅读 248评论 0 0