1、会话技术概述

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

会话技术分为Cookie和Session:

  • Cookie:数据存储在客户端,减少服务器端的压力,安全性不好,客户端可以清除Cookie
  • Session:将数据存储到服务器端,安全性相对好,增加了服务器端的压力

2、Cookie技术

服务器端向客户端发送Cookie信息:

  • 创建Cookie:Cookie cookie = new Cookie(String cookieName, String cookieValue); Cookie中不能设置中文
  • 设置Cookie在客户端的持久化时间:cookie.setMaxAge(int seconds); 不设置持久化时间,cookie信息被存储在浏览器内存中,浏览器关闭时,cookie信息销毁,当设置了持久化时间时,cookie信息会被持久化到硬盘上,过期浏览器自动删除该cookie。
  • 设置cookie的携带路径:cookie.setPath(String path),不设置时,该cookie信息会在访问该cookie的web资源所在的路径都携带cookie信息
  • 向客户端发送cookie:response.add(String cookie);
  • 删除客户端cookie:设置同名同路径的持久化时间为0的cookie进行覆盖

服务器端接受客户端携带的Cookie:

  • 获得cookie:Cookie[] cookies = response.getCookies();
  • 取得指定名字的cookie:
 for(Cookie cookie : cookies){
  if(cookie.getName().equal(cookieName)){
    String cookieValue = cookie.getValue();
  }
}

3、Session技术

获得Session对象:HttpSession session = request.getSession();

  用于获取当前会话的Session对象,如果服务器端没有该Session对象会创建一个新的Session返回,如果有直接去得该Session对象返回。

向Session中存取数据

  session.setAttribute(String name, Object obj);

  session.getAttribute(String name);

  session.removeAttribute(String name);

Session对象的生命周期

  销毁:服务器非正常关闭或session过期(session默认30分钟,从不开始操作服务器端开始),手动销毁,session.invalidate();

  作用范围:默认在一次会话中

  

会话技术Cookie&Session的更多相关文章

  1. java ->会话技术Cookie&Session

    会话技术Cookie&Session 会话技术简介 存储客户端的状态 由一个问题引出今天的内容,例如网站的购物系统,用户将购买的商品信息存储到哪里?因为Http协议是无状态的,也就是说每个客户 ...

  2. Web核心之会话技术Cookie&Session

    什么是会话技术? http协议是无状态协议.为了满足在多次请求之间数据进行交互,推出了会话技术. 会话概念:一次会话,指的是从客户端和服务器建立起连接开始,到客户端或服务器断开连接为止.中间可能进行多 ...

  3. JavaWeb学习笔记五 会话技术Cookie&Session

    什么是会话技术? 例如网站的购物系统,用户将购买的商品信息存储到哪里?因为Http协议是无状态的,也就是说每个客户访问服务器端资源时,服务器并不知道该客户端是谁,所以需要会话技术识别客户端的状态.会话 ...

  4. JavaEE之会话技术Cookie&Session

    会话技术简介 存储客户端的状态 由一个问题引出今天的内容,例如网站的购物系统,用户将购买的商品信息存储到哪         里?因为Http协议是无状态的,也就是说每个客户访问服务器端资源时,服务器并 ...

  5. 03012_会话技术Cookie&Session

    1.会话技术简介 (1)存储客户端的技术 网站的购物系统,用户将购买的商品信息存储到哪里?因为Http协议是无状态的,也就是说每个客户访问服务器端资源时,服务器并不知道该客户端是谁,所以需要会话技术识 ...

  6. Django2.2 会话技术cookie session token的区别以及实例介绍

    一.区别: 本人见解:使用自定义数据项进行加密,作为唯一身份识别,登陆时写入cookie(session基于这个).在显示相关数据 1.cookie 属于客户端会话技术(数据存储在客户端) 默认的Co ...

  7. 会话技术 Cookie+Session

    会话:这种在多次HTTP连接间维护用户与同一用户发出的不同请求之间关联的情况称为维护一个会话(session) 一次会话:浏览器第一次给服务器资源发送请求,会话建立,直到有一方断开: 功能:在一次会话 ...

  8. Servlet 会话技术cookie和session

    会话技术 Cookie技术:会话数据保存在浏览器客户端. Session技术:会话数据保存在服务器端. 一.Cooke技术 1. 特点 Cookie技术:会话数据保存在浏览器客户端. 2 .Cooki ...

  9. 会话技术cookie与session

    目录 会话技术cookie 会话技术 cookie 服务器怎样把Cookie写 给客户端 服务器如何获取客户端携带的cookie session session简介 Session如何办到在一个ser ...

随机推荐

  1. Visual Studio 2015下编译zmq项目下其他项目踩进的项目引用坑

    PS.在之前的一篇文章中介绍了如何用Visual Studio 2015编译zmq,在编译同解决方案中除了libzmq之外的项目例如inproc_thr时会报错误,具如下: Severity Code ...

  2. Android Touch事件传递机制引发的血案

    尊重原创:http://blog.csdn.net/yuanzeyao/article/details/38942135 关于Android Touch事件传递机制我之前也写过两篇文章,自觉得对Tou ...

  3. 《转》oracle—flashback

    FLASHBACK介绍 在介绍flashback之前先介绍下undo_retention相关参数 undo_retention:表示undo数据的过期时间.系统默认这个时间设置为900即15分钟.但要 ...

  4. Linux命令-网络命令:last

    last 统计linux系统所有用户的登录时间(多次登录信息)

  5. AES + RSA + Hash 实现 C-S 安全交互

    概述 AES 由于其执行速度快,易于硬件实现,破解难度大等优势,被广泛用于数据的加密. 既然是对称加密,那如何保证秘钥的安全传输?很容易想到用 RSA 加密秘钥.由于只能用私钥解密,而私钥不需要交互双 ...

  6. unity3d的GUILayout布局

    GUILayout默认采用线性布局,从上到下.可以参见<unity3d常用控件> 如果要实现横向布局,则需要添加如下代码: GUILayout.BeginHorizontal (); // ...

  7. STL 容器(vector 和 list )

    1.这个容器的知识点比较杂 迭代器的理解: 1.erase()函数的返回值,它的迭代器在循环遍历中的奇特之处: #define _CRT_SECURE_NO_WARNINGS #include < ...

  8. BootStrap modal() 如何根据返回的HTML宽度自动调整宽度?

    首先声明,如果真的这么做了也就失去了 bootstrap 多分辨率适配的好处.bootstrap 的 modal 窗口能够自动在不同分辨率下用不同的宽度,这就是它的特色呢. 以默认大小的 modal ...

  9. Xml+Xslt测试工具

    下载地址:http://download.csdn.net/detail/a497785609/5791359 说明:下载后,修改下Xslt部分的头部:<xsl:stylesheet versi ...

  10. 智能指针tr1::shared_ptr、boost::shared_ptr使用

    对于tr1::shared_ptr在安装vs同一时候会自带安装,可是版本号较低的不存在.而boost作为tr1的实现品,包括 "Algorithms Broken Compiler Work ...