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