pageContext、request、session、 application四域总结

博客
JavaWeb

pageContext

创建:访问JSP时创建pageContext
销毁:关闭JSP时销毁
域的作用范围:当前jsp页面

request

创建:访问时创建request
销毁:响应结束request销毁
域的作用范围:一次请求中

session

创建:第一次执行request.getSession()时创建
销毁:

	1)服务器(非正常)关闭时
	2)session过期/失效(默认30分钟)
	问题:时间的起算点 从何时开始计算30分钟?
	从不操作服务器端的资源开始计时
	
	可以在工程的web.xml中进行配置
	```bash
	<session-config>
	        <session-timeout>30</session-timeout>
	</session-config>
	```
	3)手动销毁session
	session.invalidate();

域的作用范围:
默认在一次会话中,也就是说在,一次会话中任何资源公用一个session对象。

面试题:浏览器关闭,session就销毁了? 不对。
默认情况下是一次会话。关闭浏览器的时候其实session没有销毁默认30分钟销毁,其实是cookie销毁了,因为sessionID是由cookie存储的。如果再次访问的时候,因为sessionID销毁了就找不到原来的session,服务器会重新创建一个session供客户端使用。

application(ServletContext)

创建:服务器启动
销毁:服务器关闭
域的作用范围:整个web应用

四大作用域范围总结

为什么pageContext域最小,因为它的作用范围只在当前页面,如果是转发到下一个页面paegContext中的数据就没有了,而reqeust域可以获取到。

pageContext域:当前jsp页面范围
request域:一次请求
session域:一次会话
application域:整个web应用

如果在servlet范围内只有三个域有用

request域:一次请求
session域:一次会话
application域:整个web应用(servletContext)

如果在jsp范围内有四个域有作用

page域:当前jsp页面范围(PageContext)
request域:一次请求
session域:一次会话
application域:整个web应用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值