1、ServletContext : 针对一个WEB应用。一个WEB应用只有一个ServletContext对象,使用该对象保存的数据在整个WEB应用中都有效。
* 创建:服务器启动的时候。
* 销毁:服务器关闭的时候或者项目移除的时候
2、HttpSession : 针对一次会话。使用该对象保存数据,一次会话(多次请求)内数据有效。
* 创建:服务器第一次调用getSession()的时候,服务器创建Session对象
* 销毁:
1)、非正常关闭服务器(正常关闭,Session被序列化)
2)、Session过期了,默认时间是30分钟
3)、手动调用session的invalidate的方法。
3、HttpServletRequest : 针对一次请求。使用该对象保存数据,一次请求(一个页面,如果是请求转发多个页面)内数据有效
* 创建:客户端向服务器发送一次请求
* 销毁:服务器为这次请求做出响应之后,销毁request
4、三个作用于对象操作的API相同
* 存放数据:setAttribute(name,value)
* 获得数据:getAttribute(name)
* 删除数据:removeAttribute(name)