`

会话跟踪

阅读更多
会话跟踪技术
1.      什么是会话
客户端打开与服务器的连接发出请求到服务器响应客户端请求的全过程称之为会话


2.      什么是会话跟踪
对同一个用户对服务器的连续的请求和接受响应的监视


3.      为什么需要会话跟踪
浏览器与服务器之间的通信是通过HTTP协议进行通信的,而HTTP协议是”无状态”的协议,它不能保存客户的信息,即一次响应完成之后连接就断开了,下一次的请求需要重新连接,这样就需要判断是否是同一个用户,所以才应会话跟踪技术来实现这种要求


4.      介绍
当服务器响应客户端的第一次请求时,将会创建一个新的session对象(该对象实现了HttpSession接口)和一个唯一的ID分配给该请求,以后客户将此会话ID与请求一起传给服务器,此会话ID在后续的请求中会将用户与session对象进行匹配,用于识别不同的客户。


5.      会话跟踪常用的方法:

a)        URL重写:URL(统一资源定位符)是Web上特定页面的地址,URL重写的技术就是在URL结尾添加一个附加数据以标识该会话,把会话ID通过URL的信息传递过去,以便在服务器端进行识别不同的用户


b)        隐藏表单域:将会话ID添加到HTML表单元素中提交到服务器,此表单元素并不在客户端显示


c)        Cookie:Cookie是Web服务器发送给客户端的一小段信息,客户端请求时可以读取该信息发送到服务器端,进而进行用户的识别。对于客户端的每次请求,服务器都会将Cookie发送到客户端,在客户端可以进行保存,以便下次使用。
客户端可以采用两种方式来保存这个Cookie对象,一种方式是 保存在 客户端内存中,称为临时Cookie,浏览器关闭后 这个Cookie对象将消失。另外一种方式是保存在 客户机的磁盘上,称为永久Cookie。以后客户端只要访问该网站,就会将这个Cookie再次发送到服务器上,前提是 这个Cookie在有效期内。 这样就实现了对客户的跟踪。
Cookie是可以被禁止的。


d)       session:

每一个用户都有一个不同的session,各个用户之间是不能共享的,是每个用户所独享的,在session中可以存放信息。
在服务器端会创建一个session对象,产生一个sessionID来标识这个session对象,然后将这个sessionID放入到Cookie中发送到客户端,下一次访问时,sessionID会发送到服务器,在服务器端进行识别不同的用户
Session是依赖Cookie的,如果Cookie被禁用,那么session也将失效


创建Session对象
HttpSession session=request.getSession();

HttpSession session=request.getSession(true);

上面二种创建session的方法效果是一样的。首先获取传递进来的在Cookie中存放的sessionID,再根据sessionID查找session对象,如果没有找到将创建一个新的session对象,并保存到Cookie中发送到客户端。如果找到了,就将session对象赋予给引用


HttpSession session=request.getSession(false);

这种方式创建过程: 首先获取传递进来的在Cookie中存放的sessionID,再根据sessionID查找session对象,如果没有找到将返回null,如果找到了,就将session对象赋予给引用
分享到:
评论

相关推荐

    用户登录,会话跟踪

    在JavaWeb开发中,用户登录和会话跟踪是至关重要的环节。这涉及到用户身份验证、安全性以及用户体验等多个方面。本文将深入探讨如何使用session和cookie技术来实现会话跟踪。 首先,我们需要理解“会话”(Session...

    基于Servlet的会话跟踪理解会话跟踪原理

    为了解决这个问题,Web开发者使用了会话跟踪技术,如Servlet中的HttpSession对象。 会话(session)是在用户与服务器交互的过程中,一系列连续的请求和响应形成的连接。例如,当用户浏览一个电子商务网站并添加商品...

    JSP中会话跟踪的操作

    在JSP(JavaServer Pages)开发中,会话跟踪(Session Tracking)是一项核心技术,它允许应用程序在多个请求之间保持用户的状态信息。J2EE(Java 2 Platform, Enterprise Edition)提供了一整套用于Web应用开发的...

    美团的Mtrace分布式会话跟踪系统架构设计与实践

    ### 美团Mtrace分布式会话跟踪系统架构设计与实践 #### 一、Mtrace项目简介 Mtrace是美团内部开发的一款分布式会话跟踪系统,旨在解决日益复杂的分布式系统中的服务调用关系梳理问题。在这样的系统环境中,每一个...

    Web后端开发-使用Session会话跟踪技术,实现用户登录、注销

    总的来说,Session会话跟踪技术是Web后端开发中实现用户登录、注销功能的关键,通过合理地管理和运用Session,可以提供更安全、更便捷的用户体验。在实际项目中,需要结合具体需求和环境,灵活选择和优化Session的...

    mvc模式学习会话跟踪

    mvc模式学习及会话跟踪,还有上机练习和代码

    PHP会话跟踪

    对于网站开发者而言,会话跟踪是一项非常重要的技术。它可以实现: - **用户身份验证**:确保只有经过认证的用户才能访问某些页面或执行某些操作。 - **个性化体验**:根据用户的偏好和历史记录提供定制化的服务。 ...

    JavaWeb会话跟踪技术

    为了解决这个问题,开发者利用各种会话跟踪技术来保持用户的上下文。本篇文章将深入探讨JavaWeb中的会话跟踪技术。 首先,最常见的会话跟踪方法是使用Cookie。Cookie是由服务器发送到客户端(浏览器)的一小段数据...

    第5章 会话跟踪.rar

    在Java Web开发中,会话跟踪是至关重要的一个环节,特别是在构建动态网页应用程序时,它允许服务器识别并记住用户在一段时间内的状态。本章节重点讨论的是如何在Java Web环境中实现会话跟踪,包括其原理、方法以及...

    jsp会话跟踪ppt

    【会话跟踪技术详解】 在Web开发中,服务器通常无法识别出同一个客户端的连续多次连接,因为HTTP协议本身是无状态的。为了在多个请求之间保持客户端的状态,我们需要使用会话跟踪技术。会话跟踪允许服务器识别并...

    会话跟踪技术及其应用1

    会话跟踪技术是Web应用程序中不可或缺的一部分,它主要用于在用户浏览多页时保持其状态,以便提供个性化的用户体验和服务。传统的会话跟踪技术主要包括Cookie、URL重写和隐藏表单字段。 Cookie技术是最常见的会话...

    jsp四种会话跟踪技术

    **JSP会话跟踪技术详解** 在Web开发中,会话跟踪是保持用户状态的关键技术。JSP提供了四种主要的会话跟踪技术,确保在多个请求之间存储和检索用户信息。 1. **Page Context(页面范围)** 页面范围是最小的范围,...

    java web整合开发王者归来光盘代码-第五章 会话跟踪

    在Java Web开发中,会话跟踪是至关重要的一个环节,特别是在构建复杂的Web应用程序时,如JSP、Servlet、Struts、Hibernate以及Spring等框架的整合应用。本资源"java web整合开发王者归来光盘代码-第五章 会话跟踪...

    给予servelet的会话跟踪的PPT

    **Servlet的会话跟踪技术详解** 在Web开发中,Servlet是一种Java编程语言编写的服务器端程序,主要用于扩展服务器的功能,处理由HTTP协议传输的数据。在Servlet应用中,会话跟踪是实现用户会话持久化的重要手段,...

    会话状态跟踪技术选择

    1. **考虑安全性需求**:如果安全性是首要考虑因素,则应优先考虑服务器端会话跟踪方法。 2. **考虑用户体验**:对于大多数现代浏览器而言,Cookie是最方便且易于实现的方式。 3. **考虑可扩展性**:随着网站规模的...

    完整版Java JSP web开发教程 03_会话跟踪简介(共22页).ppt

    【会话跟踪简介】 在Java JSP web开发中,会话跟踪是维持用户在网站上交互过程中的状态的关键技术。当用户浏览多个页面时,服务器需要识别这些请求来自同一个用户,以便提供个性化的服务,如购物车功能或者保持登录...

    分布式会话跟踪系统架构设计与实践.e99ce020-3781-11e6-9c51-9d4070b3fefa.pdf

    在探讨分布式会话跟踪系统的架构设计与实践过程中,我们首先需要明确会话跟踪的基本概念。在分布式系统中,会话跟踪主要是指在一个用户的连续访问中,系统能够识别出这是同一个用户发起的连续操作。由于分布式系统...

    7、会话跟踪技术.doc

    在这个过程中,为了在多个请求之间共享数据,开发者会利用Cookie和Session这两种主要的会话跟踪技术。 **Cookie技术详解** 1. **什么是Cookie** Cookie是一个由服务器生成并发送到客户端浏览器的键值对,用来识别...

    session会话跟踪的一个小例子

    NULL 博文链接:https://8366.iteye.com/blog/615278

Global site tag (gtag.js) - Google Analytics