HttpSession生命周期:
1.什么时候创建HttpSession
1).对于JSP:
是否浏览器访问服务端的任何一个JSP或Servlet,服务器都会立即创建一个HttpSession对象呢?
不一定。
①. 若当前的JSP或(Servlet)是客户端访问的当前WEB应用的第一个资源,且JSP的page指定的
session属性为false,则服务器就不会为JSP创建一个HttpSession对象;
②.若当前JSP不是客户端访问的当前WEB应用的第一个资源,且其他页面已经创建一个HttpSession对象,
则服务器也不会为当前JSP创建一个新的HttpSession对象,而会把和当前会话关联的那个HttpSession对象返回给当前的JSP页面。
2).page指令的session=”false” 到底表示什么意思:
当前JSP页面禁用session隐含变量!但可以使用其他的显式的对象
3).对于Servlet而言:
若Servlet是客户端访问的第一个WEB应用的资源,则只有调用了request.getSession()或request.getSession(true) 才会创建HttpSession对象
4). 在Servlet中如何获取HttpSession对象?
request.getSession(boolean create):create为false,若没有和当前JSP页面关联的HttpSession对象
则返回null;
若有返回true create为true一定返回一个HTTPSession对象。若没有和昂前JSP页面关联的HttpSession对象,
则服务器创建一个新的HttpSession对象返回,若有,则直接返回关联。
request.getSession()等同于request.getSession(true)
2.什么时候销毁HttpSession对象:
1).直接调用HttpSession的invalidate()方法:使Httpsession失效
2).服务器卸载了当前WEB应用。
3).超出HttpSession的过期时间。
设置HttpSession的过期时间:单位为S
session.setMaxInactiveInterval(5);
out.print(session.getMaxInactiveInterval());
在web.xml文件中设置HttpSession过期时间。
<session-config>
<session-timeout>30</session-timeout>
</session-config>
系统默认30分钟
今天的文章HttpSession的生命周期和何时销毁分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/4696.html