引入


Http是无状态的
-HTTP无状态︰服务器无法判断这两次请求是同一个客户端发过来的,还是不同的客户端发过来的

-无状态带来的现实问题∶第一次请求是添加商品到购物车,第二次请求是结账;如果这两次请求服务器无法区分是同一个用户的,那么就会导致混乱

-通过会话跟踪技术来解决无状态的问题。

编写代码测试

package com.atguigu.servlets;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.io.IOException;public class life extends HttpServlet {@Overrideprotected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {//获取session如果获取不到创建一个新的HttpSession session = request.getSession();System.out.println("session ID :" + session.getId());}
}

发送一个请求,并获取生成的sessionId


第一次会生成在浏览器的响应部分

第二次访问时会生成在浏览器的请求部分

会话跟踪技术.

-客户端第一次发请求给服务器,服务器获取session,获取不到,则创建新的,然后响应给客户端
-下次客户端给服务器发请求时,会把sessionID带给服务器,那么服务器就能获取到了,那么服务器就判断这一次请求和上次某次请求是同一个客户端,从而能够区分开客户端

常用的API:

request.getsession () ->获取当前的会话,没有则创建一个新的会话

request.getsession (true) ->效果和不带参数相同

request.getsession(false)->获取当前会话,没有则返回null,不会创建新的

session.getId() ->获取sessionID

session.isNew() ->判断当前session是否是新的

session.getMaxInactiveinterval() -> session的非激活间隔时长默认1800秒, 限时操作

session . setMaxinactiveinterval()
session.invalidateo ->强制性让会话立即失效

Session保存作用域

向HTTPsession中保存数据

演示从Httpsession保存作用域中获取数据
用谷歌浏览器打开时获取到了数据

但是当我们使用别的浏览器打开时将不会获取数据

session保存作用域

session保存作用域是和具体的某一个session对应的

常用的API∶

void session.setAttribute (k , v)
object session.getAttribute (k)
void removeAttribute (k)

另外共有三种保存作用域

1 ) request :一次请求响应范围
2 ) session:一次会话范围有效
3 ) application :一次应用程序范围有效

[javaweb] servlet-session 会话跟踪技术 与 session保存作用域 (三)相关推荐

  1. 会话跟踪技术,Session和Cookie详解

    知识的广度来自知识的深度,学习如果不成体系那是多可怕的一件事儿,希望我们在未来的学习道路上坚守初心,不要给自己留下遗憾,以自己喜欢的方式生活,做自己喜欢做的事,宠爱自己,做一个独一无二的自己! 对于文 ...

  2. java 会话跟踪技术_JavaEE基础(04):会话跟踪技术,Session和Cookie详解

    一.会话跟踪 1.场景描述 比如登录某个购物网站,身份识别成功后,在网站下单,支付 等操作,这些操作中当前登录用户信息必须是共享的,这样这些操作结果才能和登录用户做关联. 2.概念简介 可以把会话理解 ...

  3. JavaEE基础(04):会话跟踪技术,Session和Cookie详解

    本文源码:GitHub·点这里 || GitEE·点这里 一.会话跟踪 1.场景描述 比如登录某个购物网站,身份识别成功后,在网站下单,支付 等操作,这些操作中当前登录用户信息必须是共享的,这样这些操 ...

  4. 【Servlet】Session会话跟踪技术

    Session Session是指使用HttpSession对象实现会话跟踪的技术,是一种在服务器端保持会话跟踪的解决方案. HttpSession对象是javax.servlet.http.Http ...

  5. JavaWeb-WEB核心7 会话技术 理解什么是会话跟踪技术掌握Cookie的使用掌握Session的使用(钝化、活化)完善用户登录注册案例的功能

    会话技术 今日目标 理解什么是会话跟踪技术 掌握Cookie的使用 掌握Session的使用 完善用户登录注册案例的功能 1,会话跟踪技术的概述 对于会话跟踪这四个词,我们需要拆开来进行解释,首先要理 ...

  6. [Java Web]会话跟踪技术

    ⭐作者介绍:大二本科网络工程专业在读,持续学习Java,努力输出优质文章 ⭐作者主页:@逐梦苍穹 ⭐所属专栏:Java Web 目录 1.会话跟踪技术概述 2.数据共享 3.Cookie 4.Sess ...

  7. java logout session_会话跟踪技术--session的使用

    会话跟踪技术--session的使用 会话跟踪: 1.使用隐藏表单字段 2.URL重写 http://host/path/file.jsp?sessionid=landril 3.持久Cookie 4 ...

  8. JavaWeb第四讲 会话跟踪技术HttpSession、Cookie、url、隐藏表单域

    会话跟踪技术Session.Cookie.url.隐藏表单域 (一)Session session是保存在服务器端,理论上是没有是没有限制,只要你的内存够大. 浏览器第一次访问服务器时会创建一个ses ...

  9. java 4种跟踪会话技术_会话跟踪技术

    一.会话跟踪技术 在JavaWeb中,客户向某一服务器发出第一个请求开始,会话就开始了,直到客户关闭了浏览器会话结束. 在一个会话的多个请求中共享数据,这就是会话跟踪技术 会话路径技术使用Cookie ...

最新文章

  1. IDEA Error:java: Compilation failed: internal java compiler error
  2. 837. New 21 Game
  3. MVC中validateRequest=false不起作用
  4. [团队开发]总结下Server 2008 + TeamFoundation Server 2008安装过程
  5. 格子里输出 java_蓝桥杯-格子中输出-java
  6. 软件测试方法的分类细谈
  7. 机器学习-吴恩达-笔记-3-正则化
  8. Spring 无缝整合 quartz
  9. 从现实抽象出类的步骤
  10. jquery中单选选中及清除选中状态
  11. 苹果cms替换资源_苹果cmsV10整合云转码(PPVOD)插件
  12. 条码追溯系统解决外贸企业进销存管理
  13. windows7、windows10 桌面快捷方式左下角有一个白色方块
  14. 泛函分析和他的基础概念
  15. 高中数理化杂志高中数理化杂志社高中数理化编辑部2022年第23期目录
  16. linux画平面图软件,画平面图最简单软件.docx
  17. 《张孝祥JAVA就业培训教程》书摘
  18. tortoisegit基本使用方法
  19. mysql如何上传照片_MySQL数据库之图片上传存储数据库的2种方法讲解(Mysql)
  20. MCU在可穿戴计算机生物特征识别中的关键作用

热门文章

  1. 微软软件保护平台 白皮书.pdf
  2. nginx_upsteam
  3. SpringBoot-服务端参数验证-JSR-303验证框架
  4. 怎么用MathType添加函数识别
  5. jQuery 侧栏菜单点击body消失
  6. 2014.11 总结
  7. SQLite数据库介绍
  8. 云服务器怎么创建子网,如何使用ECS实例子网划分和子网掩码
  9. 扫地机器人腿是咕噜_扫地机器人|如何避免买到“智障”,看这篇
  10. 5、Power View—图块与切片器的应用