首页 > 其他 > 详细

session小结

时间:2015-08-25 14:00:38      阅读:205      评论:0      收藏:0      [点我收藏+]

1.session的生命周期
session是服务器用于标识客户端用户信息以判断是否为同一用户,它被保存在服务器内存中以便于高速存取
  -- session的创建
    session在用户第一次访问jsp/servlet时由服务器创建,对于html等页面可以调用request.getSession(true)强制生成
  -- session的销毁
    服务器对于长时间没有活动的session从服务器内存中清除掉而是session失效,如tomcat服务器的默认时间是20分钟
    也可以手动来使session失效,方法是调用session的invalidate()方法(validate的意思为使生效,invalidate的意思为使失效)
2.session对于浏览器的要求
   虽然session保存在服务器中,但它的正常运行依然需要浏览器的支持,这是因为http的一次连接特性使得session不能够通过http连接来判断是否是同一用户
    -- 使用cookie作为识别标志
      服务器端通过向浏览器发送一个jsessionid的cookie,session依据该cookie中保存的session id来识别是否为同一用户
      该cookie由服务器自动生成,仅当前浏览器内窗口/通过链接打开的子窗口有效,对于其他的浏览器窗口不共享,关闭浏览器则会失效
     --cookie被禁用或不支持cookie的手机浏览器的情况
      URL地址重写的解决方案:
        将客户端用户的session的id信息重写到URL地址中,服务器通过解析URL地址来获得session的id
        HttpServletResponse类提供了encodeURL(String url)方法类实现URL地址重写功能,即原先的请求地址url改为response.encodeURL(url)

session小结

原文:http://www.cnblogs.com/cy827/p/4757002.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!