什么是域对象?
域对象:保存数据 和 获取数据,用于在不同资源之间共享数据。
Web开发中的四个域对象:
按范围从小到大:page(jsp有效) → request(一次请求) → session(一次会话) → application(当前web应用)
- page域指的是pageContext.
- request域指的是HttpServletRequest
- session 域指的是 HTTPSession
- application 域指的是 ServletContext
page:jsp页面被执行,生命周期开始,jsp页面执行完毕,生命周期结束。
request:用户发送一个请求,开始,服务器返回响应,请求结束,生命周期结束。
session:用户打开浏览器访问,创建session(开始),session超时或被声明失效,该对象生命周期结束。
注:一个客户端对应一个Session,同一用户使用2个浏览器进行访问同一页面,会有两个Session,任意时间打开同一浏览器,使用的是同一个Session
application:web应用加载的时候创建。Web应用被移除或服务器关闭,对象销毁。生命周期结束。
ServletConfig对象
- 什么是ServletConfig对象?
ServletConfig对象,叫Servlet配置对象。主要用于加载配置文件的初始化参数。
- 创建时机
ServletConfig对象在servlet对象创建之后,调用init方法之前创建,该Config对象随着init方法传入到servlet中。
ServletContext对象
- 什么是ServletContext对象?
ServletContext对象叫servlet上下文对象。该对象在一个web应用中只会创建一个对象,一个WEB应用对应一个
ServletContext。代表当前web应用的环境。在当前的web应用中所有servlet都共享一个ServletContext对象。
- ServletContext对象的生命周期
ServletContext对象的生命周期 随着WEB项目启动而启动,随着WEB项目的关闭而销毁。
ServletContextListener对象
ServletContextListener对象,它能够监听 ServletContext 对象的生命周期,实际上就是监听 Web 应用的生命周期。所以在通知上下文(context)初始化和销毁的时候,ServletContextListner非常有用。