博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

JavaWeb学习笔记(持续更新)

Posted on 2017-10-29 07:30  羽系  阅读(377)  评论(0编辑  收藏  举报

HttpSession的生命周期

1)什么时候创建HttpSession对象

  • JSP:若当前的JSP是客户端访问的WEB应用的第一个资源,且JSP的page指定的session属性为false,则服务器就不会为JSP创建一个HttpSession对象
  • 若当前JSP不是客户端访问的当前WEB应用的第一个资源,且其他页面已经创建了一个HttpSession对象,则服务器也不会为当前JSP页面创建一个HttpSession对象,会返回已经创建好的
  • 对于 Serlvet: 若 Serlvet 是客户端访问的第一个 WEB 应用的资源,
    则只有调用了 request.getSession() 或 request.getSession(true) 才会创建 HttpSession 对象

2)什么时候销毁HttpSession对象

  • invalidate()
  • 服务器卸载了当前WEB应用
  • 超出HttpSession的过期时间 session.setMaxIanctiveInterval(5)
  • 并不是关闭了浏览器就销毁了HttpSession

各种路径的获取方法

  • request.getContextPath():获取web应用的根路径,如web应用名为myweb,request.getContextPath() = "/myweb"