● ServletContext针对一个WEB应用。一个WEB应用只有一个ServletContext对象,使用该对象
保存的数据在整个WEB应用中都有效。
■ 创建:服务器启动的时候.
■ 销毁:服务器关闭的时候或者项目移除的时候。
● HttpSession:针对一次会话。使用该对象保存数据,一次会话(多次请求)内数据有效。
■ 创建:服务器第一次调用getSession()的时候,服务器创建session的对象
■ 销毁:
1. 非正常关闭服务器(正常关闭:Session被序列化)
2. Session 过期了,默认时间是30分钟
3. 手动调用session的invalidate的方法。
● HttpServletRequest 针对一次请求。使用该对象保存数据,一次请求(一个页面,如果是请求转
发多个页面)内数据有效。
■ 创建: 客户端向服务端发送一次请求
■ 销毁: 服务器为这次请求作出响应之后,销毁request
● 三个作用域对象操作的API相同
■ 存放数据:setAttribute(name,value);
■ 获得数据:getAttribute(name);
■ 删除数据:removeAttribute(name);
如:
ServletRequest
getAttribute(String):Object
getAttributeNames():Enumeration<String>
setAttribute(String,Object):void
removeAttribute(String):void
HttpSession
getAttribute(String):Object
getAttributeNames():Enumeration<String>
setAttribute(String,Object):void
removeAttribute(String):void
ServletContext
getAttribute(String):Object
getAttributeNames():Enumeration<String>
setAttribute(String,Object):void
removeAttribute(String):void
第三部分 总结
编程
|-----
|执行流程
cookie |--------
|-------|路径使用
| |---------
| |使用细节
cookie&session总结---会话技术--| |---------
|
| 获得方式
| |--------
|session|执行流程
|-------|--------
|session生命周期
|----------------
|作用域操作
|-----------
|servlet作用域
|--------------