1.作用域概述
作用域:一个可以共享数据的范围可以称之为作用域。
2.四大作用域(由大到小排序):
a.ServletContext — application
代表当前web应用的对象
生命周期:
当web应用被加载,servletContext对象创建。
当web应用被销毁,servletContext对象销毁。
作用范围:
整个web应用。
主要功能
在整个web应用中共享数据。
b.Session — session
代表当前会话的对象
生命周期:
request.getSession()方法调用的时候,session对象产生
意外身亡:服务器意外关闭,session会立刻销毁。如果服务器正常关闭,数
据会以文件的形式保留在磁盘上,这个过程称之为钝化。在服务器再次启动
时,会重新读取这个文件,这个过程称之为活化。
自杀:调用session.invalidate()可以主动释放session对象。
超时死亡:如果一个session超过30分钟没有被使用,则会由服务器将其销
毁。这个销毁的时间可以通过web.xml中的session-config标签来设置。默认为
30分钟。
作用范围:
整个会话范围
主要功能:
在整个会话范围内实现数据共享
c.request — request
代表HTTP请求对象
生命周期:
请求链起始时,request对象创建。
请求链结束是,request对象销毁。
作用范围:
整个请求链。
主要功能:
在整个请求链中共享数据。
d.pageContext —pageContext
生命周期:
在jsp页面被访问时创建。
在jsp页面结束访问时销毁。
作用范围:
整个jsp页面
主要功能:
在整个jsp页面内共享数据