cookie和session

  最近看了一下cookie和session,下面想说一下体会:

   cookie是保留在客户端的东西,但他是在服务器产生的,当浏览器发送一个请求时,会根据他请求的路径是否包含浏览器保存的cookie的路径,若有保存的,则把这个COOKIE带到服务器,这个cookie可以保存几天。利用cookie可以让你在浏览一个页面是,用户名自动出现

  session他跟一个会话共死,利用session可以判断该用户是否登录,避免没有登录直接浏览页面,session是保存在服务器的,cookie相当于卡,SESSIONID相当于卡号(即存在卡里),session相当于你存放在银行的账户信息,服务器不会马上给你创建session,在第一次获取session时,即调用request.getSession()才会创建!

request.getSession()方法的原理如下:

    首先获取Cookie中的JSESSIONID,如果sessionId不存在,创建session,把session保存起来,把新创建的sessionId保存到Cookie中, 如果sessionId存在,通过sessionId查找session对象,如果没有查找到,创建session,把session保存起来,把新创建的sessionId保存到Cookie中;如果sessionId存在,通过sessionId查找到了session对象,那么就不会再创建session对象了。该方法最后 返回session
    如果创建了新的session,浏览器会得到一个包含了sessionId的Cookie,这个Cookie的生命为-1,即只在浏览器内存中存在,如果不关闭浏览器,那么Cookie就一直存在。
    >下次请求时,再次执行request.getSession()方法时,因为可以通过Cookie中的sessionId找到session对象,所以与上一次请求使用的是同一session对象。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值