java web 请求跟踪_JAVA Web 实现会话跟踪的技术笔记

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.表单隐藏域

相关的表单控件...

...

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值