初识HttpSession

  • 概念
  • 工作原理
  • 生命周期

API: https://tomcat.apache.org/tomcat-5.5-doc/servletapi/javax/servlet/http/HttpSession.html

概念

HttpSession是Servlet用于识别用户并保存用户信息的一种机制,因为Http是无状态的,因此服务器需要建立会话来识别浏览器的状态。

工作原理

一个会话通常对应一个用户,在浏览器发出Http请求之后,服务器在调用HttpServletRequest.getSession(true);语句时便实例化一个HttpSession对象来建立会话,并初始化一个SessionID。之后浏览器发出的Http请求头中会插入获取到的SessionID,这样服务器就能识别用户并保存会话中的对象了。
注意:一般来说,HttpSession的实例化、管理、销毁均在服务器,浏览器只是通过使用Cookie或者重写URL(禁用Cookie时)来传递SessionID。

生命周期

  1. 当距浏览器上一次请求时间超过HttpSession的超时设置后,HttpSession便被销毁;
  2. 当服务器调用HttpSession.invalidate();语句后,HttpSession便被销毁;
  3. 当服务器进程停止后,非持久HttpSession便被销毁。

初识HttpSession相关推荐

  1. day3----编码-集合-深浅copy-文件操作-函数初识

    day3----编码-集合-深浅copy-文件操作-函数初识 本文档主要内容: 一 编码 二 集合 三 深浅copy 四 文件操作 五 函数初识 首先,我们来看看两个字符串的比较 打开cmd,进入do ...

  2. ⑥python模块初识、pyc和PyCodeObject

    一.模块初识(一) 模块,也叫库.库有标准库第三方库. 注意事项:文件名不能和导入的模块名相同 1. sys模块 import sys print(sys.path) #打印环境变量 print(sy ...

  3. 初识java类的接口实现

    初识java类的接口实现 如果两个类之间不存在继承关系,且两个类都想实现同一个接口,两个类都必须实现接口中全部方法,否则报语法错误 如果两个类之间存在继承关系也想实现同一个接口,父类如果实现了某个接口 ...

  4. vba 编辑combobox内容_初识Visual Basic编辑器并建立一段简单的代码

    大家好,从今日开始我正式推出"VBA之EXCEL应用"教程,这个教程是面向初学人员的教程,教程一共三册,十七个章节,从简单的录制宏实现一直讲到窗体的搭建,都是我们在利用EXCEL工 ...

  5. 16.1、python初识面向对象(1)

    初识面向对象 楔子 你现在是一家游戏公司的开发人员,现在需要你开发一款叫做<人狗大战>的游戏,你就思考呀,人狗作战,那至少需要2个角色,一个是人, 一个是狗,且人和狗都有不同的技能,比如人 ...

  6. 深入Jetty源码之Servlet框架及实现(AsyncContext、RequestDispatcher、HttpSession)

    概述 Servlet是Server Applet的缩写,即在服务器端运行的小程序,而Servlet框架则是对HTTP服务器(Servlet Container)和用户小程序中间层的标准化和抽象.这一层 ...

  7. 精通Python网络爬虫:核心技术、框架与项目实战.1.1 初识网络爬虫

    摘要 网络爬虫也叫做网络机器人,可以代替人们自动地在互联网中进行数据信息的采集与整理.在大数据时代,信息的采集是一项重要的工作,如果单纯靠人力进行信息采集,不仅低效繁琐,搜集的成本也会提高.此时,我们 ...

  8. 初识mysql数据字段属性_MySQL数据库~~~~初识、基础数据类型

    一 数据库初识 1.1 什么是数据库 数据库(DataBase,简称DB),简而言之可视为电子化的文件柜----存储电子文件的处所,用户可以对文件中的数据运行新增,截取,更新,删除等操作. 所谓数据库 ...

  9. Nancy in .Net Core学习笔记 - 初识Nancy

    原文:Nancy in .Net Core学习笔记 - 初识Nancy 前言 去年11月份参加了青岛MVP线下活动,会上老MVP衣明志介绍了Nancy, 一直没有系统的学习一下,最近正好有空,就结合. ...

最新文章

  1. OpenCV-Python我刚写六行代码就出了个惊天BUG
  2. 大数据开发实战:Hive优化实战2-大表join小表优化
  3. python调用math函数_Python中sqrt函数使用方法
  4. 史上最难高考数学,全国平均26分...
  5. sonyflake.go
  6. AGV (Automated guided vehicle)基础(二) - AGV的视觉算法 - RGB - D 算法
  7. HTTP基础--chapter2结束了
  8. 你可能不知道的Chrome-devtools用法总结
  9. SLAM_SLAM问题求解框架
  10. 别点进来! Linux 与 Mac 下有趣但毫无用处的命令(转载)
  11. 当当网Python图书数据分析
  12. 如何在和010editor中粘贴hex
  13. 实验一. 路由器IP地址配置及直连网络
  14. SpringBoot集成MongoDB实现两种CRUD
  15. 让oracle开机自动启动,设置CentOS下开机自动启动Oracle
  16. jquery 立体走马灯_CSS3超酷3D文字跑马灯特效
  17. 英语专家谈英语学习方法
  18. 惠普星 TP01-055ccn电脑重装系统步骤
  19. 微信小程序父子组件方法调用方法汇总
  20. ftdi utilities

热门文章

  1. ESP32 串口升级
  2. 免费SCA工具横向测评
  3. 移动端调试神器 VConsole与eruda
  4. html表单调用js文件上传,简单实现js上传文件功能
  5. java反射之dynamic invocation与原生类型
  6. DB2错误信息SQLCODE SQLSTATE (按sqlcode排序)
  7. 数据库web管理工具treesoft的安装与使用
  8. 【C++】【第六篇-2】【黑马 p215~p242】【list容器】【set/multiset容器】【map/multimap容器】【函数对象】【谓词】【内建函数对象】
  9. 区域惯性矩matlab,基于MATLAB算法的圆柱齿轮减速器优化设计
  10. 21年一级消防工程师备考实用技巧早知道!