JavaWeb学习笔记——Session

1. Session 的创建和销毁


page 指定的 session 属性: 


1). 默认情况下, 第一次访问一个 WEB 应用的一个 JSP 页面时, 该页面都必须有一个和这个请求相关联的 Session 对象. 
因为 page 指定的 session 属性默认为 true


2). 若把 session 属性改为 false, JSP 页面不会要求一定有一个 Session 对象和当前的 JSP 页面相关联
所以若第一次访问当前 WEB 应用的 JSP 页面时, 就不会创建一个 Session 对象. 


3). 创建一个 Session 对象: 若 page 指定的 session 设置为 false 或 在 Servlet 中可以通过以下 API 获取 Session 对象. 


request.getSession(flag): 若 flag 为 true, 则一定会返回一个 HttpSession 对象, 如果已经有和当前 JSP 页面关联的 HttpSession
对象, 直接返回; 如果没有, 则创建一个新的返回. flag 为 false: 若有关联的, 则返回; 若没有, 则返回 null


request.getSession(): 相当于 request.getSession(true);


4). Session 对象的销毁: 


①. 直接调用 HttpSession 的 invalidate()
②. HttpSession 超过过期时间. 


> 返回最大时效: getMaxInactiveInterval() 单位是秒
> 设置最大时效: setMaxInactiveInterval(int interval)
> 可以在 web.xml 文件中配置 Session 的最大时效, 单位是分钟. 

<session-config>
        <session-timeout>30</session-timeout>
    </session-config>


③. 卸载当前 WEB 应用. 
注意: 关闭浏览器不会销毁 Session!

你可能感兴趣的:(JavaWeb学习笔记——Session)