常见的会话跟踪技术:Cookie和Session

会话跟踪技术:

①客户端与服务端的多次请求和响应的一个过程称之为一次会话
②一次会话可以有多次请求
在一次会话的过程中共享不同请求之间的数据就是会话跟踪技术

1.session的底层还是依赖cookie

2.cookie

  • 1.当浏览器第一次发送请求服务器,服务器创建cookie代码,用set-cookie的方法把cookie的数据传回浏览器。
  • 2.默认保存在浏览器端的内存中【可以修改】,只要浏览器没有关闭过,当第二次请求时,浏览器会自动将Cookie的数据以Cookie的方式传回给服务器。
  • 3.cookie保存数据是以键值对的形式,不能出现中文(除非转码)。
  • 4.cookie的生命周期

    ①默认请求下:浏览器会将Cookie保存在内存中,只有浏览器不关闭,数据都在。直到浏 览器关闭,数据消失 。
    ②可以设置setMaxAge(intn)来设置死亡时间

  • 5.cookie的优缺点

    cookie存储在浏览器端,减小了服务端的压力;但是数据保存在浏览器中,信息不安全,容易被获取;保存的数据类型只能是字符串;保存的数据大小不超过4kb

3.session

HttpSession是由JavaWeb提供的,用来会话跟踪的类,session是服务器端对象,保存在服务器端中

  • 1.当浏览器第一次发送请求服务器,遇到服务器端创建Session的代码,就会创建一个Session对象,然后为该Session对象分配一个id即为jsessionId,并以set-Cookie的方式将该id传回给浏览器,浏览器保存起来。

  • 2.只要浏览器没有关闭过,当第二次请求时,会自动将jsessionId以Cookie的方式传回给服务器,服务器根据该jsessionId去服务器查询,查到了使用。

  • 3.session的生命周期

    从创建到销毁的过程:
    ①出生:创建Session对象
    ②invalidate():销毁session对象

  • 4.数据的保存时间

    从添加到时间过期(默认时间30分钟),可以认为修改
    ①修改方式1:代码方式:session.setMaxInactiveInterval(int s)
    ②修改方式2:web.xml方式:,单位是分钟

  • 5.session的优缺点

    数据保存在服务端,安全性较高,可以保存的数据大小远超cookie,保存的数据类型没有限制;但是会影响服务器的性能

  • 6 获取HttpSession对象

    • Servlet中获取HttpSession对象
      HttpSession session = request.getSesssion():如果当前会话已经有了session对象那么直接返回,不存在直接创建session并返回。
    • jsp中获取HttpSession对象
      session是jsp内置对象之下,直接访问获取
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值