1.HTTP协议无状态:客户端的请求与服务器的响应所发生的一系列行为
简单的说是客户发送了请求,服务器就给客户端响应,
它们彼此之间都没有记录下来。
如:
顾客与自动售货机
普通顾客(非会员)与商场

2.cookie:把用户信息存放在客户端浏览器中,名-值
1)分类:
A.不设置过期时间:cookie存放在内存,浏览器关闭,则cookie消失
B.设置过期时间:cookie存放在硬盘上,浏览器关闭再打开,cookie还在,
直到超过过期时间。浏览器可共享此cookie的数据。

2)操作步骤:
第一:实例化Cookie对象:Cookie ck = new Cookie("名","值") ;

第二:添加Cookie对象:响应对象.addCookie(cookie对象) ;
注:在发送客户端浏览器之前可以,设置存活时间:
cookie对象.setMaxAge(秒) ;

第三:读取Cookie对象的数据
Cookie[] cookie数组对象 = request.getCookies()

for (Cookie ck : cookie数组对象) {
System.out.println(ck.getName()+"->"+ck.getValue());
}

3.HttpSession:HttpSession依赖Cookie,所以说,要是你报cookie禁用了,那么HttpSession就失效,把用户信息存放在服务器中的web容器中
工作原理

3.HttpSession:会话对象
1)获取会话对象
请求对象.getSession(false):
获取会话对象,如果存在会话对象,则返回,如果不存在会话对象,则返回null

请求对象.getSession() 等同于 请求对象.getSession(true)
获取会话对象,如果存在会话对象,则返回,如果不存在会话对象,则创建一个新的会话对象

2)常见方法
setAttribute(“属性名”,”属性值”) 根据属性名设值
getAttribute(“属性名”) 根据属性名 获取对应的值
removeAttribute(“属性名”) 根据属性名删除

getId():获取Session唯一的ID
invalidate():使HttpSession对象失效
setMaxInactiveInterval(时间):设置Session过期时间,单位是秒
getCreationTime():获取HttpSession对象创建时间
getLastAccessedTime():获取HttpSession最近一次请求时间

3)会话失效的方法有:
a.超时
b.手动失效:调用invalidate()方法
c.程序结束(web服务器关闭,切记不是浏览器关闭)

注:浏览器关闭后,Session对象失效了码? -> 答案:没有失效,在服务器仍然存在,

4.地址重写
1)响应对象.encodeRedirectURL("地址")

2)形式(语法)
a.URL地址;jsessionid=4BA4A5C6F5268E1FE3227AEB1A251E97
b.URL地址?参数名1=值1&参数名2=值2&...&参数名n=值n;jsessionid=4BA4A5C6F5268E1FE3227AEB1A251E97

5.表单隐藏域
<form action="" method="">
相关的表单控件...

<input type="hidden" name="参数名1" value="参数值1"/>
...
<input type="hidden" name="jsessionid" value="xxxxx"/>
<input type="hidden" name="参数名n" value="参数值n"/>
</form>

JAVA Web 实现会话跟踪的技术笔记的更多相关文章

  1. java web Session会话技术(原理图解+功能+与Cookie的区别+基本使用)

    java web Session会话技术(原理图解+功能+与Cookie的区别+基本使用) 这是我关于会话技术的第二篇文章,对 Cookie有不了解的兄弟可以点击下方的Cookie跳转 Cookie链 ...

  2. 五分钟学Java:如何才能学好Java Web里这么多的技术

    原创声明 本文作者:黄小斜 转载请务必在文章开头注明出处和作者. 系列文章介绍 本文是<五分钟学Java>系列文章的一篇 本系列文章主要围绕Java程序员必须掌握的核心技能,结合我个人三年 ...

  3. Java Web之会话技术

    客户端与服务器通信过程中,会产生一些数据.比如,A和B分别登陆了某宝购物网站,A买了一个Android手机,B买了一个iPhone手机,当结账时,web服务器需要分别对用户A和B的信息分别保存.根据J ...

  4. Java Web(三) 会话机制,Cookie和Session详解

    很大一部分应该知道什么是会话机制,也能说的出几句,我也大概了解一点,但是学了之后几天不用,立马忘的一干二净,原因可能是没能好好理解这两种会话机制,所以会一直遗忘,一直重新回过头来学习它,今天好好把他总 ...

  5. Java Web(三) 会话机制,Cookie和Session详解(转载)

    https://www.cnblogs.com/whgk/p/6422391.html 很大一部分应该知道什么是会话机制,也能说的出几句,我也大概了解一点,但是学了之后几天不用,立马忘的一干二净,原因 ...

  6. WEB中会话跟踪

    一.     什么叫会话跟踪 记录用户一段时间内的逻辑上相关联的不同访问请求个过程叫“会话跟踪”.通过用户在每次对服务请求时的唯一标识,可以跟踪会话. 二.     会话跟踪产生的原因 我们都知道In ...

  7. WEB中会话跟踪[转]

    今天晚上去华工参加睿智融科的笔试,问到web会话跟踪,一脸懵比,这个词听都没听过,回来后百度下,发现其实会话跟踪的内容我基本都了解的~_~ 转自:http://www.cnblogs.com/gaop ...

  8. Java Web编程的主要组件技术——JDBC

    参考书籍:<J2EE开源编程精要15讲> JDBC(Java DataBase Connectivity)是Java Web应用程序开发的最主要API之一.当向数据库查询数据时,Java应 ...

  9. 《Java web 开发实战经典》读书笔记

    去年年末,也就是大四上学期快要结束的时候,当时保研的事情确定了下来,终于有了一些空闲的时间可以学点实用的技术. 之前做数据库课程设计的时候,也接触过java web的知识,当时做了一个卖二手书籍的网站 ...

随机推荐

  1. SQL Server代理(12/12):多服务器管理

    SQL Server代理是所有实时数据库的核心.代理有很多不明显的用法,因此系统的知识,对于开发人员还是DBA都是有用的.这系列文章会通俗介绍它的很多用法. 在这一系列的上一篇,我们查看了维护计划,一 ...

  2. Chrome开发者工具详解(2)-Network面板

    Chrome开发者工具详解(2)-Network面板 注: 这一篇主要讲解面板Network,参考了Google的相关文档,主要用于公司内部技术分享. Chrome开发者工具面板 面板上包含了Elem ...

  3. 通过原生JS实现为元素添加事件

    自己写了一个为元素添加事件的方法,并封装到对象中. 说明: id : 目标元素的ID type: 事件的类型,注意的是不能加on fn:事件处理程序 isBubble :规定事件流 代码: var b ...

  4. 基于Winform的.cs文件命名空间排序及注释批量处理工具

    公司里每个程序员在命名空间的排序和注释上都有很多的不同. 杂乱的命名空间: using System; using System.Collections.Generic; using Autodesk ...

  5. IOS系统概述与层次

    一.概述 IOS是apple公司为其自己的移动设备(iPhone,iPod touch,iPad)而开发的操作系统,IOS许多的技术是基于苹果的Mac OSX桌面系统的,如果你开发过苹果的mac系统应 ...

  6. 【SQL】分配函数一枚[AllotToTable]

    适用环境:MSSQL 2005+.其中05需修改部分语句的写法才行,如: --变量的声明和赋值需分开写 --需改为如下 --05不支持+=这样的复合运算符 --需改为如下 功能: 将一个数字(整数或有 ...

  7. 【C#】注意用“划算”的方式使用图标

    先解释一下何谓“划算”:假定一个Winform程序包含若干个窗体,每个窗体左上角都要显示图标(即要设置Form.Icon属性),该程序本身也要有个图标(用于在OS资源管理器中显示),所有这些图标都是一 ...

  8. javascript学习笔记1-document.write

    <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> ...

  9. 炉石传说 C# 开发笔记 (续)

    炉石传说山寨的工作一直在进行着,在开发过程中深深体会到,对于业务的理解和整个程序的架构的整理远比开发难得多. 在开发过程中,如果你的模型不合理,不准确,很有可能造成代码的混乱,冗余,难以维护和扩展性比 ...

  10. Verilog学习笔记简单功能实现(六)...............计数分频电路

    在分频器电路中最重要的概念有两个:1)奇分频/偶分频:2)占空比. A)其中最简单的就是二分频电路,占空比为50%,其Verilog程序为 module half_clk(clr,clk_in,clk ...