java四种会话_四种会话跟踪技术

1.Cookie:

Cookie它是存储在客户端或者客户端浏览器上的文本文件,很容易就可以查看到.

所以,不能使用Cookie存储敏感数据,比如银行卡密码

不能使用Cookie来做必要的功能。

Cookie不能存储中文

使用URL编码来简介存储中文

username = URLEncoder.encode(username)

//解码

name = URLDecoder.decode(name)

2.Session

Session:会话

用户使用浏览器,进行一系列的访问,这一个过程就是一个会话

也就是说,多个请求共享一个会话

会话在第一次访问的时候就被创建

HttpSession:默认有效时间是30分钟

使用代码设置session的失效时间

session.setMaxInactiveInterval(100);

使用配置文件设置session的失效时间

200

让session立刻失效

session.invalidate();

注意:

当使用代码和配置文件同时配置session的失效时间的时候

以小的时间为准[注意,他们的单位都是分钟]

Session实现的机制:它是基于Cookie

当用户第一次访问的时候,会自动生成一个Cookie,用来记录当前Session的ID值。

这个Cookie的key是JSESSIONID value就是Session 的ID值

当Cookie被阻止,应该强制把JSESSIONID传过去,使用URL重写

>查看所有用户强制传送JSESSIONID

3.Hidden

.隐藏表单域:,非常适合步需要大量数据存储的会话应用。

4.url 重写

为了防止用户禁用cookie,可以使用URL重写技术来实现会话跟踪!

url重写原理:当服务器程序调用request.getSession();代码时,其会先看request.getCookies()方法中有没有名为JSESSIONID的cookie带过来,如果没有,就看URL有没有被重写(即附带JSESSIONID),如果有,则从服务器中找key为JSESSIONID的session对象,如果都没有,则创建一个新的session。如果用户禁用了cookie,则只能通过URL重写方式实现会话跟踪!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值