码迷,mamicode.com
首页 > 其他好文 > 详细

session小结

时间:2015-08-25 14:01:56      阅读:102      评论: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
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!